ASP.Net MVC的一个开源框架
2011-01-20 09:23
477 查看
Catharsis是一个基于ASP.Net MVC的一个开源框架,之前在codeproject上看到的。在我的2011生活看板中也说到今年准备给OpenExpressApp增加B/S支持,所以最近花了几天时间看了一下Catharsis,以下简单介绍一下。
ASP.NET MVC 3.0 RC - Razor,
The Web-application framework gathering the best practices and design patterns.
Strongly OOP, multi-tier Architecture, NHibernate 3.0, XML, ADO.NET
VS 2010, .NET 4.0 (Contracts, Covariance, Named and Default parameters)
项目地址:http://catarsa.com
http://www.codeplex.com/Catharsis/
文档:http://www.codeproject.com/KB/applications/Catharsis_part3.aspx
主界面:
CurrencyController:Currency为一个示例实体,这个为特定实体控制器
CodeListController:具有Code、Name的一个内置实体控制器
EntityController:通用的具有读写行为的控制器(添加、更新、删除)
ReadController:通用的具有读取功能行为的控制器(查询、列表、详细信息)
WebController:not only for entity, IMasterModel introduced, service operations (ObjectBinding())
Controller: ASP.NET MVC框架的控制器
界面不太美观
UI模板抽取不是很好
没有什么太吸引我的地方
实体控制类的继承
ASP.Net MVC的使用
多语言的支持
由于没有细看,很多具体实现还有待细看,毕竟我对B/S开发还有很多需要学习的,所以以上分享可能会有偏差.
今天给大家介绍的是基于ASP.NET MVC的一个开源社区项目Orchard,本篇主要介绍一下Orchard是什么,如何下载安装以及安装过程中我遇到的几个问题和解决办法。
Orchard是一个免费和开源的社区交流项目,致力于在ASP.NET平台开发应用程序和可重用性组件。它将创建用于ASP.Net应用和扩展的共享组件,以及修改这些组件以便使其应用于终端用户,脚本人员和开发者。我们也寻求与现有的应用程序的作者建立伙伴关系,以帮助他们实现自己的目标。使用的开源协议是OSI认证的 New BSD license。
Orchard项目的计划目标是以下三方面:
独特的基于.Net, 能够吸引终端客户,脚本人员和开发人员的应用程序;
一个可复用的组件集合并能够简单建立这些应用;
一个强有力的社区去帮助定义这些应用和扩展。
在近期,Orchard 项目致力于发布基于.Net CMS 的程序,这些程序允许用户快速建立以内容驱动的站点,并且提供扩展框架能够允许开发人员和定制人员通过模块和主题增加额外的内容。你可以通过 Orchard Project Site(http://orchardproject.net) 去学习更多关于这个课题的内容。以下为项目网站首页:
还可以通过其他方式安装,可以参考Orchard 发布1.0版本和ASP.NET MVC 3 RTM
注意:如果你现在下载它推荐
,当发布时会出现文件缺失的错误提示,所以你还是选择和我一样的方法吧
原因:是在装完VS2010之后再安装系统的IIS组件的,所以IIS还未安装ASP.NET相关组件,所以发布后运行会出现这个错误
解决方案:执行相应版本的aspnet_regiis.exe –i
现象:安装主题或模块报错
原因:由于下载主题后需要拷贝文件,由于目录的安全性没有添加用户修改权限所以不能安装
解决方案:给系统的Temp目录增加everyone用户修改权限后再次安装后正常
例如安装下面并应用这个主题时主界面如下图所示,看起来还比较酷吧:)
后面我将会继续介绍它的具体功能以及技术架构方面的内容。
Catharsis介绍
Web-application framework, multi-tier (5-tier) Architecture (SQL or XML is persitence, DAO as the only access point to get/store data -NHibernate 3.0, Facades as the only Business rule validation place, MVC pattern (Views on the RAZOR only) and UI (HTML, CSS and JQuery).ASP.NET MVC 3.0 RC - Razor,
The Web-application framework gathering the best practices and design patterns.
Strongly OOP, multi-tier Architecture, NHibernate 3.0, XML, ADO.NET
VS 2010, .NET 4.0 (Contracts, Covariance, Named and Default parameters)
项目地址:http://catarsa.com
http://www.codeplex.com/Catharsis/
文档:http://www.codeproject.com/KB/applications/Catharsis_part3.aspx
主界面:
架构图
Solution结构
根据上面的架构图,从一个示例Solution可以看到各自对应的项目通过向导生成实体对应的完整代码
结合VS,Catharsis提供了Recipe来生成项目代码文件,在生成实体时可以自动生成各个层的对应代码Controller继承体系
以下是框架对实体控制器的一个继承体系,框架特意抽取了一个CodeList来存储具有Code、Name的简单列表的类,这个类可以使用smallint、tinyint来作为主键以减少数据库存储空间CurrencyController:Currency为一个示例实体,这个为特定实体控制器
CodeListController:具有Code、Name的一个内置实体控制器
EntityController:通用的具有读写行为的控制器(添加、更新、删除)
ReadController:通用的具有读取功能行为的控制器(查询、列表、详细信息)
WebController:not only for entity, IMasterModel introduced, service operations (ObjectBinding())
Controller: ASP.NET MVC框架的控制器
一些不足
运行比较慢界面不太美观
UI模板抽取不是很好
没有什么太吸引我的地方
可借鉴的
强OO、多层框架实体控制类的继承
ASP.Net MVC的使用
多语言的支持
由于没有细看,很多具体实现还有待细看,毕竟我对B/S开发还有很多需要学习的,所以以上分享可能会有偏差.
今天给大家介绍的是基于ASP.NET MVC的一个开源社区项目Orchard,本篇主要介绍一下Orchard是什么,如何下载安装以及安装过程中我遇到的几个问题和解决办法。
Orchard是一个免费和开源的社区交流项目,致力于在ASP.NET平台开发应用程序和可重用性组件。它将创建用于ASP.Net应用和扩展的共享组件,以及修改这些组件以便使其应用于终端用户,脚本人员和开发者。我们也寻求与现有的应用程序的作者建立伙伴关系,以帮助他们实现自己的目标。使用的开源协议是OSI认证的 New BSD license。
Orchard项目的计划目标是以下三方面:
独特的基于.Net, 能够吸引终端客户,脚本人员和开发人员的应用程序;
一个可复用的组件集合并能够简单建立这些应用;
一个强有力的社区去帮助定义这些应用和扩展。
在近期,Orchard 项目致力于发布基于.Net CMS 的程序,这些程序允许用户快速建立以内容驱动的站点,并且提供扩展框架能够允许开发人员和定制人员通过模块和主题增加额外的内容。你可以通过 Orchard Project Site(http://orchardproject.net) 去学习更多关于这个课题的内容。以下为项目网站首页:
下载安装
作为想学习这个社区网站如何设计的架构和开发人员来说,下载代码是必须的,所以我选择在http://orchard.codeplex.com/releases/view/50197下载1.0版本的源代码,然后发布到IIS上还可以通过其他方式安装,可以参考Orchard 发布1.0版本和ASP.NET MVC 3 RTM
注意:如果你现在下载它推荐
,当发布时会出现文件缺失的错误提示,所以你还是选择和我一样的方法吧
运行可能会遇到的问题
现象:提示没有安装ASP.Net原因:是在装完VS2010之后再安装系统的IIS组件的,所以IIS还未安装ASP.NET相关组件,所以发布后运行会出现这个错误
解决方案:执行相应版本的aspnet_regiis.exe –i
现象:安装主题或模块报错
原因:由于下载主题后需要拷贝文件,由于目录的安全性没有添加用户修改权限所以不能安装
解决方案:给系统的Temp目录增加everyone用户修改权限后再次安装后正常
例如安装下面并应用这个主题时主界面如下图所示,看起来还比较酷吧:)
后面我将会继续介绍它的具体功能以及技术架构方面的内容。
相关文章推荐
- 分享一个点赞超过100的漂亮ASP.NET MVC蓝色界面框架
- 介绍一个基于ASP.NET MVC的框架Catharsis
- 开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo
- 介绍一个基于ASP.NET MVC的框架Catharsis
- [导入]ASP.NET MVC框架开发系列课程(2):一个简单的ASP.NET MVC应用程序.zip(13.70 MB)
- BrnShop开源网上商城第二讲:ASP.NET MVC框架
- 分享一个漂亮的ASP.NET MVC界面框架
- ASP.NET MVC WebApi 返回数据类型序列化控制(json,xml) 用javascript在客户端删除某一个cookie键值对 input点击链接另一个页面,各种操作。 C# 往线程里传参数的方法总结 TCP/IP 协议 用C#+Selenium+ChromeDriver 生成我的咕咚跑步路线地图 (转)值得学习百度开源70+项目
- 扩展Html Helper类,ASP.NET MVC框架提供了一个帮助我们构造Html元素的类:TagBuilder
- 推荐一款asp.net-MVC开源框架,完全开源免费使用
- ASP.NET MVC 框架入门——写一个搜索引擎
- 《Entity Framework 6 Recipes》中文翻译系列 (20) -----第四章 ASP.NET MVC中使用实体框架之在MVC中构建一个CRUD示例
- BrnShop开源网上商城第二讲:ASP.NET MVC框架
- 终于找到了一个基于ASP.NET MVC框架下的CMS系统——Orchard!
- 开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI
- 分享一个漂亮的ASP.NET MVC黑色界面框架
- Asp.net MVC 2.0 + Unity 2.0(IoC) + EF4.0 实例:RoRoWoBlog 开源项目框架代码
- "开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo"项目分析
- 一个基于Asp.net MVC的博客类网站开源了!
- 开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo