共 9 页: 上一页 1 2 3 4 5 6 7 8 9 下一页
摘要:接着上一篇Views的笔记在视图里导入命名空间(Importing Namespaces into a View)Razor视图通过一套常用的命名空间编译,这为我们省去了在使用常用类时指定必要的命名空间的麻烦。如果需要使用我们自己定义的类就必须引入命名空间或者是使用类的完整名称(包含了命名空间),如下所示:View Code @{ ViewBag.Title = "Index"; } Here is some data: @DynamicData.Infrastructure.MyUtility.GetUsefulData()上面的例子使用了MyUtility类,里面有一个 阅读全文
posted @ 2012-04-12 00:35 Rt-张雪飞 阅读 (2910) 评论 (6) 编辑
摘要:在前面很多的章节里面的,最常用的action result是视图呈现并返回给客户端的ViewResult类型。本章会专注于视图的原理,首先展示MVC框架是如何使用视图引擎处理ViewResults的,包括阐释如何创建一个视图引擎。接着介绍使用Razor视图引擎的一些技术。最后是关于创建和使用部分视图,子actions,以及Razor片段,这些都是涉及高效MVC开发的本质话题。创建一个自定义视图引擎(Creating a Custom View Engine)MVC框架包含了两个内置的,功能完善,容易理解的视图引擎:a.Razor引擎:MVC3里面引入的一个新的视图引擎,具有更加简洁和优雅的语法 阅读全文
posted @ 2012-04-06 23:45 Rt-张雪飞 阅读 (3444) 评论 (4) 编辑
摘要:本章内容分为两个部分,第一部分:介绍关于controllers工作原理的高级功能,探究从请求到action方法执行的整个请求处理管道的组成部分并阐释控制这个过程的不同的方式;第二部分:介绍两种特殊的控制器,分别是:无会话(sessionless)控制器,异步(asynchronous)控制器.这些能够增进服务器的处理能力。这部分会阐释如何创建和使用它们,并且会说明在什么情况下使用它们。请求处理管道的组成(Request Processing Pipeline Components)我们的焦点放在第一部分的Controller Factory和Action Invoker上面,其实从命名上看已经 阅读全文
posted @ 2012-03-28 19:38 Rt-张雪飞 阅读 (3952) 评论 (8) 编辑
摘要:过滤器(Filters)过滤器(Filters)向请求处理管道注入了额外的逻辑。他们提供了一种简单而优雅的方式实现了横切关注点,这个术语是针对整个应用程序使用的功能,并不能灵活的适用任何一个点,所以这个会打破分解关注点的模式。像日志,验证和缓存都是经典的横切关注点的例子。之所以称为过滤器(Filters),是因为这个术语同样应用于其他web应用程序框架里面,包括Ruby on Rails。然而,MVC框架里面的过滤器完全不同于ASP.NET平台里面的Request.Filters和Response.Filter对象,这两个对象是实现请求和响应流的传输(一种高级的并很少发生的活动)。当然,我们能 阅读全文
posted @ 2012-03-20 18:04 Rt-张雪飞 阅读 (3184) 评论 (8) 编辑
摘要:重定向到文本URL(Redirecting to a Literal URL)最基本的重定向浏览器方式就是调用Redirect方法,该方法会返回一个RedirectResult类的实例。例如:public RedirectResult Redirect() {return RedirectPermanent("/Example/Index"); }当然我们可以根据自己的喜好来选择Redirect方法的重载,可以添加一个bool类型的参数指定是否永久重定向(不指定则是暂时重定向)进行单元测试:View Code [TestMethod] public void Redirec 阅读全文
posted @ 2012-03-11 01:27 Rt-张雪飞 阅读 (2294) 评论 (4) 编辑
摘要:生成输出(Producing Output)在controller完成处理请求之后,通常需要生成一个响应。当我们通过直接实现IController接口创建一个简单的controller时,我们需要对处理请求的每一个方面负责,包括创建对客户端的响应。如果我们想发送一个HTML响应,那我们必须创建并且集合HTML数据,然后使用Response.Write方法将数据发送到客户端。类似地,如果我们想重定向用户到其他的URL,可以使用Response.Redirect方法。下面是具体的实例:View Code using System.Web.Mvc;using System.Web.Routing;n 阅读全文
posted @ 2012-03-09 00:42 Rt-张雪飞 阅读 (3059) 评论 (34) 编辑
摘要:Controllers入门(Introducing the Controller)每一个针对应用程序的请求都是通过Controller处理的,controller自由地选择合适的方式来处理这些请求,只要它不偏离到View和Model所负责的区域。这样意味着我们不要把业务或数据存储的逻辑放到Controllers里面,也不要创建用户接口。在ASP.NET MVC框架里面,Controllers是包含必要的处理请求的.NET类。前面有解释Controller的角色是封装我们的应用程序逻辑。这意味着Controller是负责处理请求,实行对Model的操作,选择View呈现给用户。本次的笔记会介绍C 阅读全文
posted @ 2012-03-06 22:12 Rt-张雪飞 阅读 (2560) 评论 (2) 编辑
摘要:使用AreasMVC框架支持在areas(区域)里面组织一个web应用程序,每一个area呈现应用程序的一个功能段,比如管理,订单,客户支持等等。这对于一个大的项目是非常有用的,因为将所有的controller,model,view都只是放在一套文件夹里面(整个项目所有的Controller都在一个文件夹下)会非常难管理的。这时area就非常有用了,每一个area都有自己的一套文件结构,如Controller,View,Model,通过area就可以保持相对的分离。这样做可以让程序的每一个功能块划分的更加明确,当有很多的开发人员合作开发时也可以避免相互冲突。下面会创建一个实例来说明Area的作 阅读全文
posted @ 2012-02-26 23:08 Rt-张雪飞 阅读 (2937) 评论 (3) 编辑
摘要:自定义路由系统通过前面的学习,我们能够感受到路由系统的灵活性和可配置性,如果这些不能满足我们的需求,我们可以自定义行为,下面会介绍如何自定义路由。创建一个对RouteBase类的自定义实现如果我们不喜欢标准Route对象匹配URL的方式,或者想实现一些特别的东西。我们可以从RouteBase派生一个类来替代。派生出来的类可以让我们自己控制URL的匹配,参数的提取,以及Outgoing URL的创建。派生的类需要实现下面两个方法:1.GetRouteData(HttpContextBase httpContext):实现传入的URL的匹配机制。 在每一个RouteTable.Routes进入的时 阅读全文
posted @ 2012-02-22 23:49 Rt-张雪飞 阅读 (2415) 评论 (13) 编辑
摘要:创建传出的URL(Outgoing URLs)处理传入的URL(Incoming URLs)仅仅是路由系统的一部分功能。我们也需要使用URL架构来创建Outgoing URLs,我们可以将这些URL嵌入到我们的View里面,并且能够让用户点击URL提交表单给我们的应用程序,并能够命中合适的controller和action。下面会展示用不同的技术来创建Outgoing URLs:最便捷的创建Outgoing URLs就是手动定义如:<a href="/Home/About">About this application</a> 这样的URL。这个UR 阅读全文
posted @ 2012-02-18 15:49 Rt-张雪飞 阅读 (2713) 评论 (4) 编辑
共 9 页: 上一页 1 2 3 4 5 6 7 8 9 下一页