(一)认识ASP.NET MVC

MVC模式简介

MVC将应用程序的用户界面(User Interface,UI)分为三个主要部分:

模型:一组类,描述了要处理的数据以及修改和操作数据的业务规则。

视图:定义应用程序用户界面的显示方式。

控制器:一组类,用于成立来自用户,整个应用程序流以及特定应用逻辑的通信。

注意:MVC指的是一种用户界面模式 。MVC模式是处理用户交互的一种解决方案,它并不处理引用程序关注的其他问题,如数据访问、服务交互等。MVC是一种有用的模式,但是是在开发应用程序时用到的许多模式之一。

MVC在Web框架中的应用

MVC三个主要部分的定义:

    ●模型:模型是描述程序设计人员感兴趣问题域的一些类,这些类通常封装存储在数据库中的数据,以及操作这些数据和执行特定域业务逻辑的代码。在ASP.NET MVC中,模型就像使用了某种工具的数据访问层(Data Access Layer),这种工具包括实体框架(Entity Framework)或者与包含特定域逻辑的自定义代码组合在一起的NHibernate。

    ●视图:一个动态生成HTML页面的模板。

    ●控制器:一个协调视图和模型之间关系的特殊类。它响应用户输入,与模型进行对话,并决定呈现那个视图。在ASP.NET MVC中,这个类文件通常以后缀名Controller表示。

MVC使用的一些基本原则:

    ●约定由于配置。

    ●不重复(又名DRY原则)。

    ●尽量保持可插拔性。

    ●尽量为开发人员提供帮助,但必要时允许开发人员自由发挥。

ASP.NET MVC5概述

框架的主要特性:

●One ASP.NET

●新的Web项目体验

●ASP.NET Identify

●Bootstrap模板

●特性路由

●ASP.NET基架

●身份验证过滤器

●过滤器重写

One ASP.NET

可以添加对其他框架的支持,工具和特性都是作为NuGet包提供的。开发过程中改变想法,就可以使用ASP.NET基架向任何现有的ASP.NET应用程序添加MVC。

ASP.NET Identify

ASP.NET Identify主要的新特性:

●One ASP.NET Identify系统:为了支持前面介绍的One ASP.NET,新的ASP.NET Identify被设计为可在整个ASP.NET家族中使用(包括MVC、Web Forms、Web Pages、Web API、SignalR,以及使用其中任何技术组合创建的混合引用程序)。

●控制用户资料数据:存储额外的用户信息,只需要在代表用户的模型类中添加属性即可。

●控制优于持久化:默认情况下,所有用户信息都使用Entity Framework Code First存储,所以可以获得我们在使用Entity Framework Code First时已经习惯了的简单性和控制。但是,也可以插入其他任何我们希望使用的持久化机制,包括其他ORM、数据库、自定义的Web服务等。

●可测试性:ASP.NET Identity API是使用接口设计的,所以允许为用户相关的应用程序代码编写待援测试。

●基于声明:虽然ASP.NET Identity仍然支持用户角色,但是也支持基于声明的身份验证。声明的表达力比角色强许多,所以给我们提供了更大的能力和灵活性。

●提供登录器:ASP.NET Identity并不是只关注用户名/密码身份验证,而是也理解用户经常通过社交提交器(如Microsoft Account、Facebook 或Twitter)和Windows Azure Active Directory进行身份验证。

●NuGet分发:ASP.NET Identity 作为NuGet包安装到应用程序中。这意味着可以单独安装ASP.NET Identity ,并通过更新一个NuGet包,可以把它升级到新版本。


记住:MVC中遵循约定优于配置。

相关文章
相关标签/搜索