06 2016 档案

摘要:Web API简介 Web API是新添加到ASP.NET平台上的,能够快捷地创建Web服务,以便对HTTP客户端提供API。 它建立在常规MVC框架应用程序的基础之上,但不属于MVC框架部分。其核心是ASP.NET平台的一部分,因而能够用于其他类型的Web应用程序,或作为独立的Web服务引擎。 建 阅读全文
posted @ 2016-06-03 14:37 Ke.Saga 阅读(398) 评论(0) 推荐(0)
摘要:捆绑包(Bundle): 能够组织和优化CSS以及JavaScript文件,是由视图和布局引发浏览器向服务器请求的文件。 显示模式(Display Mode): 针对不同的设备采用不同的视图。 理解默认脚本库 在创建除Empty以外的任一MVC项目时,Visual Studio都会在Scripts文 阅读全文
posted @ 2016-06-03 14:10 Ke.Saga 阅读(616) 评论(2) 推荐(0)
摘要:模型验证(Model Validation):是确保用户接收的数据适合于绑定的模型,并且在不合适时,给用户提供有用的信息,以帮助他们修正其问题的过程。 模型验证过程一:检查接收的数据——是保持域模型完整性的方式之一。 模型验证过程二:帮助用户修正问题。 示例项目介绍 项目模板:Basic 项目名称: 阅读全文
posted @ 2016-06-03 11:38 Ke.Saga 阅读(1927) 评论(0) 推荐(0)
摘要:创建项目 项目名称:MvcModels 模板:Basic 下面是项目的基础文件及其内容: 模型类:Person.cs 控制器:HomeController.cs 视图:Index.cshtml(强类型) CSS样式:Site.css 理解模型绑定 模型绑定在HTTP请求和C#(指的是MVC中的动作方 阅读全文
posted @ 2016-06-03 11:07 Ke.Saga 阅读(675) 评论(0) 推荐(0)
摘要:创建基本的链接和URL<!--?xml:namespace prefix = "o" ns = "urn:schemas-microsoft-com:office:office" /--> 在我们介绍链接或URL之前先做一些准备,我们这部分要介绍的知识将要使用的项目就是之前建立的HelperMeth 阅读全文
posted @ 2016-06-03 10:34 Ke.Saga 阅读(470) 评论(0) 推荐(0)
摘要:相比辅助器方法,模板辅助器方法更智能一些,它们可以指定想要显示的属性,而让MVC框架去判断应该使用什么样的HTML元素。只是,需要一些初期关注才能建立起来,但毕竟是一种显示数据的更为灵活的方式。 这里打算继续使用介绍辅助器方法时使用的项目,但是,CreatePerson.cshtml视图在之前的辅助 阅读全文
posted @ 2016-06-02 22:10 Ke.Saga 阅读(852) 评论(0) 推荐(0)
摘要:辅助器方法 在开发ASP.NET MVC项目时,经常会用到辅助器方法,它能够提供很多遍历的工作,比如可以对代码块和标记进行打包等。下面通过新建一个示例项目来看看其在实际使用中的情况。 示例项目 项目名:HelperMethods 模板:Basic(基本) 项目名:HelperMethods 模板:B 阅读全文
posted @ 2016-06-02 16:05 Ke.Saga 阅读(475) 评论(0) 推荐(0)
摘要:创建自定义视图引擎 一般情况下直接使用MVC框架自带的内建视图引擎即可,但如果想知道视图引擎是如何工作的,就需要从建立一个自定义视图引擎开始了。通过之前的学习我们都知道了内建视图引擎包括Razor和ASPX两种,ASPX是针对旧版本MVC程序的,他主要是维护旧版本MVC应用程序,保持系统的兼容性而保 阅读全文
posted @ 2016-06-02 15:48 Ke.Saga 阅读(352) 评论(0) 推荐(0)
摘要:控制器可扩展性 这部分主要研究一下如何配置控制器工厂和动作调用器,以便了解如何控制它们的行为;另外,也看看如何能够替代这些组件,并使用自己的逻辑。 下图是一个请求经过各组件时的基本流程,它演示了请求的处理过程: 调用一个动作方法 (一个请求在调用动作方法时的处理管道) 准备示例项目 为了解控制器的可 阅读全文
posted @ 2016-06-02 11:24 Ke.Saga 阅读(326) 评论(0) 推荐(0)
摘要:过滤器 过滤器(Filter)把附加逻辑注入到MVC框的请求处理,实现了交叉关注。所谓交叉关注(Cross-Cutting Concerns),是指可以用于整个应用程序,而又不适合放置在某个局部位置的功能,否则会打破关注分离模式。典型的例子有:登录、授权、缓存等等。 使用过滤器 如果希望动作方法只能 阅读全文
posted @ 2016-06-02 10:53 Ke.Saga 阅读(494) 评论(0) 推荐(0)
摘要:到达应用程序的每一个请求都是由控制器处理的。但要注意,不要把事务或数据存储逻辑放到控制器中,也不要生成用户界面。 在ASP.NET MVC框架中,控制器是含有请求处理逻辑的.NET类。其作用是封装应用程序逻辑。也就是说,控制器要负责处理输入请求、执行域模型上的操作,并选择渲染给用户的视图。 控制器的 阅读全文
posted @ 2016-06-02 09:32 Ke.Saga 阅读(571) 评论(0) 推荐(0)
摘要:定制路由系统 路由系统是灵活可配置的,当然还可以通过下面这两种方式定制路由系统,来满足其他需求。 1、 通过创建自定义的RouteBase实现; 2、 通过创建自定义路由处理程序实现。 创建自定义的RouteBase实现 创建自定义的RouteBase实现,需要实现一个RouteBase的派生类,而 阅读全文
posted @ 2016-06-01 17:04 Ke.Saga 阅读(750) 评论(0) 推荐(1)
摘要:在视图中生成输出URL 使用路由系统来生成输出URL,能够确保URL方案动态地产生URL。 在视图中生成输出URL的最简单做法是在视图中调用Html.ActionLink辅助器方法,如: <div>@Html.ActionLink("This is an outgoing URL", "Custom 阅读全文
posted @ 2016-06-01 16:39 Ke.Saga 阅读(787) 评论(0) 推荐(0)
摘要:MVC应用的请求除了针对控制器和动作的,还有需要对内容进行服务的方法,如对图像、静态HTML文件、JavaScript库等等。请看下面演示示例: 默认情况下,路由系统在评估应用程序的路由之前,会考察一个URL是否匹配一个磁盘文件,也就是说不必为对静态文件请求的URL添加路由。如果将RouteColl 阅读全文
posted @ 2016-06-01 16:24 Ke.Saga 阅读(273) 评论(0) 推荐(0)
摘要:在Web Form 情况下,每一个 ASPX页面既是一个文件,又是一个队请求自包含的响应。而在 MVC 情况下,请求是由控制器类中的动作方法处理的,而且与硬盘上的文件没有一对一的相互关系。 ASP.NET 平台为了处理 MVC 的 URL,采用了路由系统,它主要有两个功能: 考查一个输入 URL(I 阅读全文
posted @ 2016-06-01 16:17 Ke.Saga 阅读(506) 评论(0) 推荐(0)
摘要:一般常用的工具有DI容器(依懒性注入:DI,Dependency Injection)、单元测试框架和模仿工具 DI容器 依懒性注入——DI(Dependency Injection): 也成为控制反转(IoC,Inversion of Control),它是一种实现松散耦合的设计模式,可以解决一个 阅读全文
posted @ 2016-06-01 15:50 Ke.Saga 阅读(291) 评论(0) 推荐(0)
摘要:关于 Razor: Razor 语句以 @ 字符开始。在使用 Razor 声明视图模型对象的类型时要使用小写字母,如在本例文件 Index.cshtml 文件中 @model 以小写的 m 开头,但要注意,在 访问被声明的视图模型对象的类型时要以大写字母的形式开头,如 @Model.Name 的形式 阅读全文
posted @ 2016-06-01 15:14 Ke.Saga 阅读(392) 评论(0) 推荐(1)
摘要:MVC框架搜索视图的目录序列遵循“约定由于配置”规则。 默认MVC框架会根据路由数据中controller的值来选择视图,而不是控制器类的名称。 Razor视图引擎在查找视图时遵循的MVC框架早期的约定:即优先查找诸如~/Views/Home/和~/Views/Shared/路径下的.cshtml或 阅读全文
posted @ 2016-06-01 15:11 Ke.Saga 阅读(202) 评论(0) 推荐(1)