1、MVC模式

Mvc将应用程序分离为三个部分:

  • Model:是一组类,用来描述被处理的数据,同时也定义这些数据如何被变更和操作的业务规则。与数据访问层非常类似。
  • View:是一种动态生成HTML的模板,定义程序的用户界面如何显示。
  • Controller:是一组类,用来处理来自用户的信息,全部程序流和具体的程序逻辑,通常以Controller为后缀。

2.MVC4新特性:

  • Web API。
  • 增强的项目模版。
  • 移动项目模板使用jQuery Mobile。
  • 显示模式(Display Modes)
  • 异步控制器。
  • Bundling and minification

3.MVC4的需求:

开发工具为:Visual Studio 2012,Visual Studio 2010 SP1,Visual Web Developer 2010 Express SP1。

4.安装MVC4

Visual Studio 2012本身就包含MVC4另外无需安装。

如果是Visual Studio 2010,Web Platform 安装: http://www.microsoft.com/web/gallery/install.aspx?appid=MVC4VS2010

可执行安装包:http://go.microsoft.com/fwlink/?LinkID=243392

5.服务器上安装MVC4

服务器上安装MVC4环境与客户端一样。

如果服务器上没安装MVC4,那么用MVC4开发的程序能运行么?答案是当然可以。MVC4的所有必要组件都在包含在了bin文件夹。难怪体积会那么大,其实服务器上有MVC4的运行环境程序部署在服务器的时候可以这些组件完全可以删掉。

6.创建MVC4应用程序

本来不像说这个的,那是阿里的老太婆才会做的。

新建项目-选择模版

  • 空:就是一个空项目,基本的组件和目录结构还是有的。
  • 基本:一个最低限度的模板,有基本的文件夹,css,MVC应用程序的基本结构。
  • Internet应用程序:一个常用足够丰富的模板,包含可账管理功能(依赖ASP.NET Membership),创建后就可直接运行。
  • Intranet应用程序:与Internet应用程序一样只是使用的Windows账户。
  • 移动应用程序:专门针对移动设备的模版,包含移动视觉效果,触摸控件,支持Ajax导航。
  • WEB API:专门针对HTTP services的模板。

呜呜,这个每次创建的时候都纠结死,不知道啥意思,要多谢洞庭夕照大哥的分享,嘿嘿,又拍马屁了。。。。

7、MVC4项目的结构

创建项目会自动添加一些文件和文件夹,Internet应用程序模板创建完默认有8个顶级目录

目录
用途
Controllers
放置控制器类
Models
放置数据描述、操纵类和业务对象类
Views
放置视图
Scripts
放置JavaScript脚本
Images
放置图像
Content 放置css和除了JavaScript脚本,图像以外的东西
Filters 放置过滤器代码
App_Data 放置数据存数文件
App_Start 放置配置文件代码

默认重生成的这些目录结构提供了一个清晰的目录结构,但并不是必须的,可以调整,像大型项目中国往往会把数据、业务逻辑等放到单独的一个项目中。

默认情况下Controllers目录自动创建两个类HomeController和AccountController。

Views目录下有3个子目录/Account , /Home,和/Shared。

Content目录下有一个式样。

Scripts目录下生成一些jQuery相关的脚本。

MvcMusicStore.Tests 项目会生成两个测试类。(Visual Studio Unit Test只在Visual Studio 2012 Professional以上的版本才有)

生成的默认功能:主页、关于、登陆、登出、注册及一个未处理错误的页面。


ASP.NET MVC的约定

MVC应用程序默认遵循一些约定,像:视图文件默认的目录为\Views\[ControllerName]\[ActionName].cshtml

约定胜于配置

意味着我们可以根据经验(约定)编写应用程序而不需要进行配置。别人也可以更容易理解程序。

  • 控制器都以Controller为后缀并且保存在Controllers目录。
  • Views目录存放应用程序的视图。
  • 视图的路径为Views/控制器名称/,但有一个共享目录 /Views/Shared/可以自由存放视图。

约定可以简化沟通

  • 你不需配置计算机就会知道如何来执行
  • 你的程序容易被其他人员浏览、阅读和调试、维护。

总结:了解了mvc的发展,结构,环境、约定及如何创建MVC4应用程序,可以更好的理解和学习MVC4。

第一章 初识MVC4的更多相关文章

  1. Java 面向对象编程——第一章 初识Java

      第一章    初识Java 1.  什么是Java? Java是一种简单的.面向对象的.分布式的.解释的.安全的.可移植的.性能优异的多线程语言.它以其强安全性.平台无关性.硬件结构无关性.语言简 ...

  2. 第一章 初识shiro

    shiro学习教程来自开涛大神的博客:http://jinnianshilongnian.iteye.com/blog/2018936 第一章 初识shiro 简单了解shiro主要记住三张图即可. ...

  3. Cocos2d-x 3.0 红孩儿私家必修 - 第一章 初识Cocos2d-x 3.0project

    第一章    初识Cocos2d-x 3.0project Cocos2d-x 3.0出来了,听说与之前版本号相比修改较大 做为一个游戏开发人员.我们应该欢迎Cocos2d-x持续的更新和强大,Coc ...

  4. C语言编程入门之--第一章初识程序

    第一章 初识程序 导读:计算机程序无时不刻的影响着人类的生活,现代社会已经离不开程序,程序的作用如此巨大,那么程序到底是什么呢?本章主要讨论程序的概念,唤起读者对程序的兴趣,同时对C语言程序与其它语言 ...

  5. Java 第一章 初识Java

    第一章笔记 什么是计算机程序:算机为完成某些功能生产的一系列有序指令集合 Java技术包括: java SE:标准版 java EE:企业版 Java ME:移动版 开发Java程序步骤:1.编写 2 ...

  6. 第一章 初识数据库Mysql

    初识数据库Mysql(my)   在企业中 percona: 一.数据库基础知识 Mysql是一个开放源代码的数据库管理系统(DBMS),它是由Mysql AB公司开发.发布并支持的.Mysql是一个 ...

  7. 第一章 初识Mysql

    Mysql是一个开放源代码的数据库管理系统(DBMS),它是由MySQL AB 公司开发.发布并支持的. 登录 -- mysql #本地登录,默认用户root,空密码,用户为root@127.0.0. ...

  8. Windows Forms编程实战学习:第一章 初识Windows Forms

    初识Windows Forms 1,用C#编程 using System.Windows.Forms;   [assembly: System.Reflection.AssemblyVersion(& ...

  9. WPF从入门到放弃系列第一章 初识WPF

    什么是WPF WPF(Windows Presentation Foundation)是微软推出的基于Windows Vista的用户界面框架,属于.NET Framework 3.0的一部分.它提供 ...

随机推荐

  1. (转)解决ScrollView嵌套ListView或者GridView导致只显示一行的方法

    即动态获取ListView和GridView的高度 一.对于ListView ListView listview= new ListView(this); setListViewHeightBased ...

  2. Android logcat

    logcat是Android中一个命令行工具,可以用于得到程序的log信息. 基本命令 logcat使用方法如下所示: [adb] logcat [<option>] ... [<f ...

  3. 深入了解Activity-生命周期

    一 介绍 Activity是android中使用最为频繁的组件,在官方文档中是这样描述的:An activity is a single, focused thing that the user ca ...

  4. 我对XCode Objective-c Cocoa的简单理解

    我对XCode Objective-c Cocoa的简单理解 Xcode Xcode说的通俗一点就是开发OS X 和 iOS 应用程序的. 如果我们想要认真点说 ,Xcode 是运行在操作系统Mac ...

  5. iOS开发之网络编程--5、NSURLSessionUploadTask+NSURLSessionDataDelegate代理上传

    前言:关于NSURLSession的主要内容快到尾声了,这里就讲讲文件上传.关于文件上传当然就要使用NSURLSessionUploadTask,这里直接讲解常用的会和代理NSURLSessionDa ...

  6. 网易新闻iOS版使用的18个开源组件

    转载来自:http://www.jianshu.com/p/8952944f7566  原文最后编辑时间:2015.05.19 网易新闻iOS版在开发过程中曾经使用过的第三方开源类库.组件 1.AFN ...

  7. Head First HTML CSS XHTML笔记

    最近在看点前端的东西,看到了这本入门级的好书 <head></head>中的title和style <q></q> inline元素 在<p> ...

  8. OOD沉思录 --- 类和对象的关系 --- 包含关系1

    4.5 如果类包含另一个类的对象,那么包含类应当向被包含的对象发送消息(调用方法).  也就是说,所有的包含关系都应当是使用关系. 如果不是这样,那么包含的类有什么用处呢?当然,面向过程的开发人员会想 ...

  9. Java 图片处理——如何生成高清晰度而占有磁盘小的缩略图

    现在的web项目,图片越来越多,图片大小也越来越大,随便就能达到1M,2M,甚至更大.用户上传的图片,一般是无法直接使用的.一般要生成两三种对应的缩略图,分别适配不同的终端,不同的场景.比如PC,手机 ...

  10. SQL Server 2008 R2——VC++ ADO 操作 事务

    ==================================声明================================== 本文原创,转载在正文中显要的注明作者和出处,并保证文章的完 ...