net开源开发web框架(net快速开发框架源码)
net开源项目整理
整理一些平时收藏和应用的开源代码,方便自己学习和查阅
1.应用
nopcommerce ,开源电商网站,开发环境asp.net mvc(未支持.net core),使用技术(autofac,ef,页面插件等)
OrchardCMS ,内容管理网站
(.net版本)
(.net core版本)
ABP(aspnetboilerplate) ,提供一系列工具用于web应用创建,支持 ASP.NET Core, ASP.NET MVC Web API,也提供了web应用的模板
(.net core 版本,tag分支有支持.net版本的)
IdentityServer ,用户授权网站(支持openid和OAuth 2.0),可用于单点登录和第三方授权等
(.net版本)
(.net core版本)
eShopOnContainers 微软提供的微服务实例
PetShop 三层架构经典例子,用于新手学习,不过aspx有点过时了
BlogEngine.NET 博客网站,也是aspx
2.组件
Lucene.Net 全文检索开发组件
ServiceStack 半开源,用于创建web服务
MassTransit 可用于创建基于消息的服务和应用,依赖于RabbitMQ
stateless 简单的工作流开发组件,不支持在线定制工作流
Hangfire 任务调度开发利器
Jwt.Net 用于生成JWT (JSON Web Token) 和JWT校验
npoi 支持office文件的读写
StackExchange.Redis Redis的.net客户端
CacheManager 用于缓存的管理,支持Redis.Memcached,couchbase等
Autofac Ioc组件,用于依赖注入
LightGBM 用于机器学习
3.框架
asp.net mvc
Nancy 类似asp.net mvc,web开发框架
4.其他
dotnet core 主页 ,提供dotnet core相关知识的索引和例子,方便快速入门
.net源码

推荐几个流行的WEB UI开源框架
1.Aliceui
Aliceui是支付宝的样式解决方案,是一套精选的基于 spm 生态圈的样式模块集合,是 Arale 的子集,也是一套模块化的样式命名和组织规范,是写 CSS 的更好方式。
gitHub地址:
2.Amazeui
Amaze UI 是一个轻量级、 Mobile first 的前端框架, 基于开源社区流行前端框架编写的。
官网地址:
3.sui
SUI是一套基于bootstrap开发的前端组件库,同时她也是一套设计规范。
通过SUI,可以非常方便的设计和实现精美的页面。
官网地址:
同时sui还有移动端版本msui,msui是阿里巴巴共享业务事业部UED团队的作品。目的是为了手机H5页面提供一个常用的组件库,减少重复工作。
地址:
4.FrozeUI
Frozen UI是一个开源的简单易用,轻量快捷的移动端UI框架。基于手Q样式规范,选取最常用的组件,做成手Q公用离线包减少请求,升级方式友好,文档完善,目前全面应用在腾讯手Q增值业务中。
官网地址:
5.uiKit
uiKit是一款轻量级、模块化的前端框架,可快速构建强大的web前端界面。
官网地址:
6.H-ui
H-ui是轻量级前端框架,简单免费,兼容性好,适用于中国网站。
官网地址:
7.Weui
weUI 是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信 Web 开发量身设计,可以令用户的使用感知更加统一。包含button、cell、dialog、 progress、 toast、article、actionsheet、icon等各式元素。
官网地址:
8.layui
Layui 诞生于2016年金秋,是一款带着浓烈情怀的国产前端UI框架,她追求极简,又不失丰盈的内在,说她是史上最轻量的结晶,似乎并不为过。一切都源自于她对原生态的执着,对前端社区的那些噪杂声音的过滤,以及她本身的精心雕琢。
官网地址:
9.YDUI Touch
YDUI Touch 专为移动端打造,在技术实现、交互设计上兼容主流移动设备,保证代码轻、性能高;使用 Flex 技术,灵活自如地对齐、收缩、扩展元素,轻松搞定移动页面布局;实现强大的屏幕适配布局,等比例适配所有屏幕。什么?用得不开心?轻松切换 px;自定义Javascript组件、Less文件、Less变量,定制一份属于自己的YDUI;
Asp.net mvc和asp.net有什么区别?
区别:
一、ASP.NET是一个网站开发的技术,是.NET框架中的一个应用模型。(历史挺长远的)使用ASP.NET开发Web应用程序并维持其运行,比其他开发语言更加简单。与Java、PHP和Perl等高级技术相比,ASP.NET具有方便性、灵活性、生产效率高、安全性高及面向对象等优点,是目前主流的网络编程技术之一。
MVC与ASP.NET完全没有关系,是一个全新的Web开发,事实上ASP.NET是创建WEB应用的框架而MVC是能够用更好的方法来组织并管理代码的一种更高级架构体系,所以可以称之为ASP.NET MVC。可将原来的ASP.NET称为 ASP.NET Webforms,新的MVC 称为ASP.NET MVC。
MVC是软件架构的一种模式,可以说就相当于常说的设计模式。其中主要包括三个模块,顾名思义。就如MVC名字所显示的那样:模型(Model),视图(View),控制器(Controller)。mvc中的模型(Model)和视图(View )是完全区别于三层架构中的模型(Model)和视图(View)的。
二、Asp.net微软提供web开发框架或者技术。分Web Form和ASP.NET MVC。下面简单说明各自优缺点。
Web Form
优点:
WebForm优点
1、支持丰富的服务器控件。
2、支持视图状态,每个控件状态以“隐藏域”的形式存在当前表单页面来达到“有状态”,这就是ViewState
3、基于事件驱动编程,如:click事件等,aspx页面与cs文件分离,即显示逻辑与处理逻辑分离,便于分工,美工、编程。
4、学习成本低。
缺点:
1、站在项目架构的角度,web form不是很理想架构模式,尽管可以使用经典的三层架构或者mvp,但不是最优秀的。
2、性能viewstate成功解决了asp问题,但同样引入新的问题,viewstate页面存储势必增加页面大小、降低程序性能。
3、代码可重用性不好;缺少对并行开发支持,因为aspx页面与cs紧密耦合太高;Seo不友好,因为url指定具体aspx页面;不利于单元测试,因为使用大量事件处理函数。
ASP.NET MVC
Asp.net Mvc架构模式是一种低耦合、可测试的web应用程序框架,它是基于CLR和成熟的MVC架构构建的。ASP.NET MVC不支持ViewState和服务器控件。
优点:
1、有对数据直接访问的权利,如:对数据库的访问;
2、模型(Model)“不依赖”视图(View)和控制器(Controller),即模型(Model)不关心它会被如何显示或者如何被操作;
3、模型(Model)中数据的变化一般会通过一种刷新机制被“公布”;
4、为了实现3中的“机制”用于监视此模型的视图必须事先在此模型上注册。从而,视图可以了解在数据模型上发生的改变。
缺点:
没有viewstate和基于事件的编程,上手慢,学习成本高。
三、使用场景:
1、快速开发------gt;web form
2、单元测试、性能--------gt;mvc
3、大量使用js、jquery------gt;mvc
4.、代码重用性-------gt;mvc
四、WebForm的开发方式
服务器端控件
一般处理程序+Html静态页+Ajax
一般处理程序+Html模板
五、模型不同
WebForm模型
MVC请求模型
DomainModel–领域模型:不仅仅是一个实体类,而是整个业务才处理流程的一个规则。
六、ViewState处理
ASP.Net MVC的开发方式。
2009年第一个开源项目版本发布。
更加简洁,更加接近原始的“请求-处理-响应”。
更加开发、更多的新的特点、社区活跃。
不会取代WebForm。
底层跟WebForm都是一样的。管道上不同的处理而已。
MVC只是表示层的一种新的方式。
MVC是微软2009对外公布的第一个开源的表示层框架,这是微软的第一个开源项目。
MVC目的不是取代WebFrom开发,只是web开发的另外一种选择。
WEB移动端开发使用什么框架比较好?
很久以前整理了篇将手机网站做成手机应用的JS框架。时隔一年多,很多新的技术已经出现,下面再来总结下还有哪些框架是适合面向手机设备的开发的。
1、jQuery Mobile
jQuery Mobile 是 jQuery 在手机上和平板设备上的版本。jQuery Mobile 不仅会给主流移动平台带来jQuery核心库,而且会发布一个完整统一的jQuery移动UI框架。支持全球主流的移动平台。jQuery Mobile开发团队说:能开发这个项目,我们非常兴奋。移动Web太需要一个跨浏览器的框架,让开发人员开发出真正的移动Web网站。
2、jQTouch
jQTouch 是一个 jQuery 的插件,主要用于手机上的 Webkit 浏览器上实现一些包括动画、列表导航、默认应用样式等各种常见UI效果的 JavaScript 库。支持包括 iPhone、Android 等手机。
3、DHTMLX Touch
DHTMLX Touch是一个免费的HTML5/JavaScript框架,专门为触摸屏设备而优化。为您带来快速开发工艺精美的移动Web应用程序的能力。DHTMLX Touch UI Designer是一个可视化的编辑器用于构建移动用户界面。它能够帮您以最少的编码构建一流的用户界面。在其主页上提供一些示例可以展示DHTMLX Touch强大的用户界面。包括一个menu app for the iPad (适用于开发餐厅应用) 和Book Shop (一个电子书店应用)。
4、Mobilize.js
Mobilize.js是一个开源的HTML5-JavaScript框架用于从任何现在有标准网站快速,简便地构建移动网站。这个框架其实就是将需要在移动设备上显示的部分页面以jQuery Mobile的默认主题显示,而不是实现一个全新完整的移动页面。Mobilize.js 可用于任意网站,但对于基于WordPress和Sphinx的网站不需要使用该框架转换,因为已经有非常多的插件可以使用。
5、The M Project
The-M-Project是另外一个强大的JavaScript框架,它利用HTML5新的特性来更好和更简便地开发移动应用。这个框架遵循著名的MVC软件架构模式。它还支持离线,所以你的用户可以在没有连接网络的情况下继续操作(当下次有连线的时候,再将数据同步到服务器中)。提供优秀的文档(这个项目拥有一个引导新用户入门的开发指南)。可以查看提供的示例来对该项目有一个初目的了解。这些示例包括:ToDo App(待办事项目应用) 和 KitchenSink (这个示例包括这个框架提供的所有UI元素)。
6、WebApp.Net
WebApp.Net 提供了很多的 API,因此可以帮助你节省很多工作了。不需要花时间去进行 Ajax 调用的编码,因为已经内置了,另外还有很多其它内置功能,提供了详细的文档和应用演示。
7、Wijmo
Wijmo是一个基于jQuery UI的UI部件的套件。Wijmo部件进行了优化客户端Web开发和利用jQuery的优越的性能和易用性的力量。所有的Wijmo部件都配备了20多个主题和支持ThemeRoller。
8、960 Grid on jQuery-Mobile
jquery-mobile-960 是一个用于移动 Web 开发的网格框架,综合了 960.gs 的灵活性和 jQuery Mobile 的方便性。它的目的是让 jQuery Mobile 布局更加的灵活,使得应用应许在移动终端更加易用。
9、Sencha Touch Framework
Sencha Touch 是世界上第一个基于 HTML5 的移动 Web 开发框架,支持最新的 HTML5 和 CSS3 标准,全面兼容 Android 和 Apple iOS 设备,提供了丰富的 WEB UI 组件,可以快速的开发出运行于移动终端的应用程序。Shencha是第一个使用HTML5,CSS和JavaScript并且支持音频/视频,本地存储,圆角,渐变背景以及阴影的开发框架。
10、NimbleKit
NimbleKit 是为 iOS 设备构建应用程序最快速的方式,你不需要知道 Objective-C 或者 iOS SDK,你只需结合 JavaScript 代码编写 HTML 页面就可以了。
11、Touchy? Boilerplate
Touchy Boilerplate 是一个用来创建移动web app,包括HTML模板,Meta tag等的工具。Touchy可以支持动态页面导航,固定页头,滚动内容,浏览历史记录等功能。Touchy使用jQuery或者 Zepto.JS。
12、PhoneGap
PhoneGap是一个用基于HTML,CSS和JavaScript的,创建移动跨平台移动应用程序的快速开发平台。它使开发者能够利用iPhone,Android,Palm,Symbian,WP7,Bada和Blackberry智能手机的核心功能——包括地理定位,加速器,联系人,声音和振动等,此外PhoneGap拥有丰富的插件,可以以此扩展无限的功能。PhoneGap是免费的,但是它需要特定平台提供的附加软件,例如iPhone的iPhone SDK,Android的Android SDK等,也可以和DW5.5配套开发。使用PhoneGap只比为每个平台分别建立应用程序好一点点,因为虽然基本代码是一样的,但是你仍然需要为每个平台分别编译应用程序。
13、joshfire
Joshfire是一个开源的跨设备开发框架,帮助开发者创建可以在多种设备上运行的web app。它使用HTML5和JavaScript,并且允许开发者快速整合本地应用和特定的web应用。Joshfire可以让你的应用接受键盘,鼠标,触摸屏,遥控器等设备的输入。Joshfire支持Node.JS。4.Sencha Touch:基于HTML5的移动网页开发框架。
14、 Julia
Julia框架由基本CSS3文件、JS库和各个平台的运行库构成。不像PhoneGap,Julia不仅仅包含调用本机代码的接口层,它还包含 Model-View-Controller(MVC)支持,Delegation支持,OAuth支持,异步数据库存取接口,HTML选择符(类jQuery调用接口),HTML模版(允 许嵌入JS代码)等应用开发必备的API接口。 基于Julia的应用开发就像网站开发那么简单,是的,你终于可以用HTML5开发一个完整的、跨平台 的、不亚于本机代码的、易于维护的移动应用了!大幕即将揭晓,让我们一起进入移动开发的新时代
15、SproutCore HTML5 Application Framework
SproutCore 是一个 HTML5 移动 Web 开发框架,它的目标是在无需浏览器插件的情况下,在浏览器中位应用程序提供极佳的桌面效果。
16、Titanium
这是一个强大的,健壮的移动Web开发框架。能够让使用现有的HTML, CSS和JavaScript知识来为 iOS和Android平台开发原生移动应用。作为一个越来越大的移动Web框架,它拥有超过300个的APIs和活跃的开发者社区。你从这个社区中得到每一个开发人员的帮助。Titanium Mobile支持原生的iOS和Android UI元素如Table views, tabs, switches和popovers。它提供能够与移动设备的摄像头和本地文件存储系统相交互的特性。
17、Lungo.js
Lungo.js 是一个采用HTML5, CSS3 和JavaScript技术实现的移动Web应用程序开发框架。利用这框架开发的应用程序可运行所有流行的平台包括:iOS, Android, Blackberry 和 WebOs。它还支持触摸事件如:tap, double-tap和swipe。整个框架没有用到任何图片包括图标,所有都矢量化。可以在这个框架中使用HTML5拥有的一些特性如:WebSQL, 地理位置定位,历史或设备方向等。Lungo.js是一个模块化并且完全可定制的框架。
18、xui.js
有时候你可能需要一个超轻量级的框架,只要拥有用于开发标准客户端所需要的功能如:DOM操作,事件处理,Ajax和一些动画效果。如果是这样的话,这个框架刚好非常适合你。整个框架采用GZIP压缩完之后只有4.2 KB。
19、EmbedJS
EmbedJS是一个用于嵌入式设备的JavaScript框架如:移动电话,TVs、tablets和so forth。EmbedJS强大之处在于,它拥有专门为特定平台和浏览器如iOS, Firefox, Android等提供相应的开发版本。这样就能够以最少的代码,为用户提供最佳的体验。而且假如你喜欢自己定制,可以利用其提供的EmbedJS Build tool工具实现。EmbedJS基于Dojo实现,所以你如果熟悉Dojo API语法,那EmbedJS将是你最佳的选择。
20、zepto.js
zepto.js是一个专为mobile WebKit浏览器(如:Safari和Chrome)而开发的一个JavaScript框架。它标榜自己在其简约的开发理念,能够帮助开发人员简单、快速地完成开发交付任务。更重要的是这个JS框架,是超轻量级的,只有5KB。zepto.js的语法借鉴并且兼容jQuery。
21、Baker
Baker是用来在iPad或者iPhone平台上发布交互式的电子书或者电子杂志的HTML5电子书框架。
22、ChocolateChip-UI
ChocolateChip-UI 是一个手机移动 Web 开发框架,采用 HTML5, WAML, CSS 和 JavaScript等技术实现。基于 ChocolateChip JavaScript 框架,包含最新的 ChUI.JS 和 ChUI.css.
23、Magazine Grid
Magazine Grid 是一个超现代的 CSS 框架,用于 iPad 和 iPhone 手机,使用类似杂志的设计风格。Magazine Grid 可让用户使用 HTML5 元素来组织杂志页,非常轻量级(4k),在移动设备上加载非常快,对老的浏览器也支持。
24、Kendo UI
Kendo UI是一个强大的框架用于快速HTML5 UI开发。基于最新的HTML5、CSS3和JavaScript标准。 Kendo UI包含了开发现代JavaScript开发所需要的所有一切,包括:强大的数据源,通用的拖拉(Drag-and-Drop)功能,模板,和UI控件。
25、HTML App Host Framework
这是一个用于构建基于 Windows Phone 7 的 HTML/JavaScript 托管框架,使用 HTML5 技术。该框架由支持在标准 xap 格式中嵌入 html 应用的控件。
ASP.net core是什么,和ASP.net一样吗?
不一样
ASP.NET Core 是一个用于net程序跨平台的框架,在它的基础上会重写.NET Framework(windows)、Mono( Linux),以实现所有net程序、网站的跨平台
ASP.net 是一种微软推出的网站开发技术 目前一般分为 asp.net webform、asp.net mvc 两种
ASP.NET Core 1.0 是一个开源跨平台的开发框架,用于构建基于云的现代 Web 应用 。它是从底层开始重新构建来提供性能优良的Web应用开发框架,可以部署在云上或者本地服务器上。另外,它使得 ASP.NET 应用更加精简和模块化(可以根据你的应用需要向里面添加其他模块),跨平台(你可以很容易的在 Windows, Mac or Linux 上开发和部署你的应用),云优化(你可以在云上在云上部署和调试你的应用)。
ASP.NET又称为ASP+,不仅仅是ASP的简单升级,而是微软公司推出的新一代脚本语言。ASP.NET基于.NET Framework的Web开发平台,不但吸收了ASP以前版本的最大优点并参照Java、VB语言的开发优势加入了许多新的特色,同时也修正了以前的ASP版本的运行错误。[1-2]
ASP.NET具备开发网站应用程序的一切解决方案,包括验证、缓存、状态管理、调试和部署等全部功能。在代码撰写方面特色是将页面逻辑和业务逻辑分开,它分离程序代码与显示的内容,让丰富多彩的网页更容易撰写。同时使程序代码看起来更洁净、更简单