`
pumaboyd
  • 浏览: 247808 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

MonoRail MVC应用(2)-构建多层结构的应用程序

阅读更多

习惯了分层结构的.NET开发了,当然也是分层有优势,所以在使用MonoRail进行网站构建时,首先考虑到的问题就是MonoRail如何应对分层的结构。
问题1:MonoRail在WEB层没有根目录,必须有一个Views的目录
MonoRail MVC没有根目录的结构,也就是只能访问一个二级目录,如http://www.pumaboyd.com/Views\/*,然后其他所有内容都在Views这个目录下面。起初我认为这是一个很严重的问题,这样的限制很约束。后来在firstyi文章介绍可以配置到根目录,这才有信心继续看下去。其实到最后你会发现,通过Routing 就可以解决这个问题了。而且我还是觉的Routing的方式最好。
你还可以更改默认的Views目录,可以通过WebConfig配置

<viewEngine viewPathRoot=”WAP3″ customEngine=”Castle.MonoRail.Framework.Views.NVelocity.NVelocityViewEngine, Castle.MonoRail.Framework.Views.NVelocity”/>

这样默认的目录就变成WAP3了。

问题2:Controller所对应的CS文件。
如果是默认,那么他将在Controllers目录中,而这是我很不希望看到的。这样整个Web层,又有了DLL。所以我们需要配置到单独一层(一个独立的项目中)
添加独立项目,WebConfig中类似配置

<assembly>WebHome.Control</assembly>

而且支持多个Controller的。具体看你的项目运用了,如果需要可以切分的更细。

<assembly>WebHome.Control</assembly>

<assembly>WebHome.Control1</assembly>

<assembly>WebHome.Control2</assembly>

至于剩下的Service、BLL、DAC层都和原有的结构变化不大。其实感觉到最后就是将目前的WEB层拆分为V和C

DEMO图(图片在结构的表现力上总是优于文字。)
castle-fig2-lay

  • WebHome 就是页面了,也就是MVC的V
  • Controls就是是页面的显示控制类了,也就是MVC的C
  • Service&DAC 就是具体页面逻辑和数据访问层(是否是MVC的M我觉的不太合适,我感觉我在淡化M的概念)
  • Component 就是页面的一些组件,这个就相当于WebControl

返回MonoRail MVC应用

分享到:
评论

相关推荐

    MonoRail例子(入门篇)

    在这个“入门篇”中,我们将深入探讨如何使用MonoRail构建一个简单的MVC应用程序。 首先,让我们理解MVC模式的基本概念: 1. Model:模型层是应用程序的核心,包含业务逻辑和数据。它处理数据的存储和检索,以及与...

    monorail项目-留言簿-GeustBook.rar

    Monorail项目是一个典型的Web应用程序开发实例,其核心部分是一个名为“留言簿”(GuestBook)的功能模块。这个模块旨在提供一个在线平台,让用户能够方便地留下自己的信息,进行互动交流。本文将深入探讨Monorail...

    monorail项目-文件管理-MvcFileManage.rar

    在软件开发中,文件管理是不可或缺的一部分,尤其是在Web应用程序中。Monorail项目,作为一个轻量级的.NET MVC框架,为开发者提供了一种高效、灵活的方式来处理文件操作。本文将深入探讨"MvcFileManage"这一模块,它...

    ShoppingCart-MonoRail.rar

    《MonoRail:构建高效Web应用的框架探索》 MonoRail,这个名字在IT行业中或许并不如ASP.NET那样耳熟能详,但它却是.NET平台上的一个强大且灵活的Web应用程序框架。"ShoppingCart-MonoRail.rar"这个压缩包,包含了对...

    monorail的小例子

    `MonoRail`目录很可能是Monorail框架的核心代码库,可能包含了各种类库和接口,用于构建MVC(Model-View-Controller)架构的应用程序。在这个目录中,我们可以找到如控制器基类、路由系统、视图引擎以及模型绑定等...

    ASP.NET MVC in Action

    - **MVC在Web应用中的优势**:MVC通过将应用程序的主要功能分离为三个独立的角色——模型(Model)、视图(View)和控制器(Controller),提供了一种稳定且易于测试的方法来构建Web应用程序。 #### 二、ASP.NET ...

    MonoRail .net

    MonoRail .NET是一个开源的Web应用程序框架,设计用于替代ASP.NET,它提供了更灵活的开发模式和更高的可扩展性。 MonoRail这个名字来源于铁路系统中的单轨列车,寓意其为单一轨道上的应用程序框架,强调轻量级和高效...

    MonoRail+实体类生成器.rar

    MonoRail是 Castle Project 的一部分,它是一个开源的.NET Web 应用程序框架,设计用于替代ASP.NET,提供更灵活的MVC(Model-View-Controller)架构。MonoRail这个名字是“Monorail”和“Rails”(Ruby on Rails)的...

    Monorail PaginationHelper.CreateCustomPage 自定义分页

    Monorail是基于.NET平台的一个MVC(Model-View-Controller)框架,它简化了Web应用程序的开发过程,提供了一种更为清晰的方式来构建Web应用。在Monorail框架中,分页功能通常通过`PaginationHelper`类实现,而`...

    学习资料monorail

    Castle Monorail是MVC(Model-View-Controller)设计模式的一个实现,它提供了灵活的架构,允许开发者构建可扩展、易于测试和维护的Web应用程序。在学习Castle Monorail时,你需要了解的主要知识点包括: 1. **MVC...

    ibatisnet+monorail+vs2010

    【MonoRail】是Castle Project的一个开源Web应用程序框架,它为.NET平台提供了类似于Ruby on Rails的MVC(模型-视图-控制器)架构。MonoRail强调开发者的生产力,提供灵活的路由、强大的视图引擎和丰富的控制器特性...

    MonoRail入门实例

    MonoRail是.NET框架下的一款轻量级Web应用框架,它为开发者提供了构建高效、灵活和可测试的Web应用程序的能力。本教程将引导你逐步了解MonoRail的基本概念和使用方法,包括filter、home、rescue、routing和layout这...

    asp.net mvc 学习手册

    **ASP.NET MVC**(Model-View-Controller)是由微软官方提供的用于开发**Web应用程序**的一种框架。它基于MVC架构模式设计,适用于构建动态网站。与传统的ASP.NET Web Forms相比,ASP.NET MVC 更加灵活,支持更现代...

    monorail简单例子

    Monorail,中文常被称为“单轨框架”,是.NET平台上的一款轻量级Web应用程序开发框架。这个框架在早期被广泛用于构建动态、高性能的Web应用,尤其受到那些寻求替代ASP.NET MVC或者Web Forms的开发者们的青睐。在这个...

    MonoRail+IBatisNet +Velocity

    2. 配置MonoRail的路线和控制器,定义应用程序的入口点。 3. 设置IBatisNet,包括数据库连接字符串、映射文件配置和SqlMapConfig.xml的编写。 4. 创建Velocity模板文件,学习并理解其语法,将数据绑定到模板中。 5. ...

    MonoRail 实体类生成器

    MonoRail是.NET平台上的一款轻量级MVC(Model-View-Controller)框架,它提供了丰富的功能和灵活性,使得开发者能够更高效地构建Web应用程序。而实体类作为数据模型的核心组成部分,通常需要与数据库表结构一一对应...

    ASP.NET MVC4开发指南

    ASP.NET MVC 是微软官方提供的以MVC模式为基础的ASP.NET Web应用程序(Web Application)框架,它由Castle的MonoRail而来。ASP.NET MVC 4已经正式发布,并内置于Visual Studio 2012,新版本ASP.NET MVC版本新增了手机...

Global site tag (gtag.js) - Google Analytics