最近开了ASP.NET MVC5高级编程这本课程,先来无事,开个专栏好了,不然懒得身体生锈~(≧▽≦)/~啦啦啦。
长话短说,教程简洁,不会的留言即可。
MVC 编程模式
MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:
- Model(模型)表示应用程序核心(比如数据库记录列表)。
- View(视图)显示数据(数据库记录)。
- Controller(控制器)处理输入(写入数据库记录)。
下面,我们将开始第一个MVC程序哦!
示例程序——MVC MusicStore
- Step1 创建一个Asp.Net MVC 5项目
打开Visual studio 2015 点“文件”->新建->项目。
Visual C# --> Web --> ASP.NET Web应用程序
MVC此时处于选中状态,勾选“添加单元测试”(最好选上,利于后期调试)。
完成以上步骤,基本的项目创建完成,此时点击“Ctrl F5”可运行项目,如下图所示。
下面我们开始了解具体的项目:
首先是各个顶级目录的作用:
重要文件说明 1)、Views下面的web.config:是整个视图的配置文件;根目录下的web.config:作用于整个项目的配置 2)、Global.asax.cs全局应用程序控制文件
3、MVC中的约定:
视图访问和寻址规则 1)、在控制器中使用View()方法调用视图,返回和“动作方法同名”的视图 2)、寻址规则:View()方法默认从“View文件夹”下寻找和控制器同名的文件夹 MVC中的约定 1)、控制器:必须以Controller结尾 2)、视图:必须放在Views文件夹下,并且要和控制器同名的子目录中创建 约定胜于配置 1)、提前规定好 2)、无需配置 3)、不遵守规则则出错
开始认识控制器
我们先看看我们创建的这个默认的项目,有个HomeController类:
可以看到,页面已经发生变化:
下面我们添加一个新的StoreController类:
(右击)Controllers文件夹 --> 添加 --> 控制器,选择空类别基架模板:
添加后在Controllers文件夹中会多出文件“StoreController.cs”,并且在文件夹Views下会多出“Store”文件夹,遵循了我们的约定:
大家可以看到,控制器中的这些方法(Index、Browse)称为控制器操作,控制器操作的工作是响应URL请求,执行正确的操作,并向浏览器或是单击这个URL的用户做出响应!
比如我们现在新建的这个Store页面,我们修改他的Index方法:
然后URL为:http://localhost:54297/Store 当然,不同机器可能端口号不一样,自己更改即可,或者在vs中Ctrl F5,就是不调试的启动:
然后可以自己添加方法:
修改Details方法,使其读取和显示一个名为ID的参数,在Asp.Net MVC 5的默认路由约定中:将操作方法名称后面的URL的这个片段作为一个参数,该参数的名称为ID,如果操作方法中有名为ID的参数,那么Asp.Net MVC 会自动将这个URL片段作为参数传进来,就是ID的值!
如图:
可以在浏览器中看localhost:54297/Store/Details/5:
控制器总结:
- 1 ,不需要任何额外配置,浏览/Store/Browse就可以执行StoreController类中的Browse方法,这就是操作中的路由。
- 2 ,判断一个类是否是控制器:看它是否继承了 System.Web.Controller类。
- 3 ,在MVC中,控制器才是核心,每一个请求都必须通过控制器处理,而且有些请求不需要模型和视图!
控制器就是MVC应用程序中的“指挥员”,它紧密的编排用户、模型对象和视图的交互。同时控制器还负责响应用户的输入,操纵正确的模型对象,然后选择合适的视图显示给用户以作为对用户最初输入的响应!!!
参考文章,感谢菡二娷博主:
https://www.cnblogs.com/imstrive/category/900665.html
https://www.cnblogs.com/cuig/p/8945145.html