标签:
一段废话:看懂、把代码敲一遍是不能把知识真正的学会的,学会一个知识:1.总结知识特性,2.举一反三运用
----------------------------------------------------------
注:在部署服务器时,应将配置文件中<compilation debug="false" targetframwork="4.0"> 。debug必须为"false"
----------------------------------------------------------
一、MVC项目模板:
1.Empty(空项目):包含VMC框架所需的最少文件。
2.Basic(基本项目):在空项目的基础上增补了一些结构(布局、JS库文件、CSS样式(表单元素和验证)),这是最常用的模板。没有采用任何默认的认证。
3.Internet Application 和 Intranet Application:进一步充实,提供了更复杂的起点 ,使用不同的认证机制以适应各自的网络环境。
4.Moblie Application: 在Internet Application模板基础上作了改进,针对移动设备进行了优化。
5.Web API:用以创建一个可以使用MVC 4 Web API 新特性的项目。
在Basic 、Internet Application、Intranet Application 三个模板中,Internet Application项目最为复杂,因为它实现了一个完整的用户管理和认证系统,引入大量视图。
二、MVC项目概要:
文件夹或文件 |
描述 |
注 |
/App_Data |
放置私有数据:XML文件、SQLite 、SQL Server数据库文件、或其它基本文件的存储(数据)库 |
IIS 不对此文件夹进行内容服务(Web无法请求到) |
/App_Start |
包含项目核心的配置设置:路由、过滤器及其它内容包(脚本样式捆绑包等) |
|
/bin |
存放MVC应用程序编译好的程序集,不在GAC(全局程序集缓存)中的引用程序集 |
IIS 不对此文件夹进行内容服务(Web无法请求到)。在项目中“显示所有文件”才能看到。编译生成的二进制文件,通常不应该把它们放在源控制中 |
/Content |
放置静态内容:CSS文件、图像等 |
约定,不是必须。 |
/Controllers |
放置控制器类 |
约定,控制器类是可以放在任何地方,或是在一个独立的项目中定义模型类 |
/Models |
放置视图模型或域模型类(简单项目)。 |
约定,一般用一个专用的项目定义域模型,此文件夹只放视图模型。
|
/Scripts |
存放JS库,JQuery和几个流行库 | 约定,可更改 |
/Views | 保存视图和分部视图,通常按关联的控制器进行命名文件夹 | /Views/Web.config阻止IIS对此目录内容进行服务,必须通过Action方法进行渲染 |
/Views/Shared | 保存布局、分享的视图(非专用的) | |
/Views/Web.config | 不是应用程序配置文件。含有全视图能够与ASP.NET进行工作、防止IIS调用视图所需要的配置,默认导入视图的命名空间 | |
/Global.asax | 全局ASP.NET应用程序类。后台代码类(Global.asax.cs)用于注册路由配置、建立涉及程序初始化、停机、出现未知异常情况时运行的代码。 | 同web Form中的Global.asax作用 |
/Web.config | 应用程序配置文件。 | 同web Form中的Web.config作用 |
三、MVC可选项目概要
文件或文件夹 | 描述 |
/Areas | 把一个大型应用程序划分成较小片段的一种方式。(MVC) |
/App_GlobalResources /App_LocalResources |
含有用于定位Web Form页面的资源文件 |
/App_Browsers | 含有.browser的XML文件,描述了各Web浏览器的标识,以及它们的具备的能力 |
/App_Themes | 含有Web Form的主题(.skin文件),影响Web Form控件的渲染 |
四、MVC中的约定
1.建议用户的约定:Scripts文件夹等
2.“约定优于配置”:不需要明确地配置控制器与其视图之间的关联,只要遵从命名约定就能正常工作,如:
(1)控制器类约定,以“Controller”结尾;
(2)视图约定,视图及分部视图放在/Views/<控制器名>文件夹中(忽略结尾Controller);
(3)布局约定,以下划线(_)字符做为文件名前缀,且放在/Views/SHared文件夹中。除Empty项目模板外,VS会创建一个名为_Layout.cshtml的布局。默认情况下,会通过/Views/_ViewStart.cshtml文件将这个布局运用于所有视图。
标签:
原文地址:http://www.cnblogs.com/wjs5943283/p/4634724.html