ASP.NET mvc创建第一个项目

创建第一个MVC

下面来分析下具体的文件夹代表什么


content放的是css文件及图片

controllers文件夹放置的是控制器类。命名规范结尾必须是Controller

Model里面放置的是模型,结尾命名规则是Models.

Script文件夹放置的是javascript。

View就是放置视图就是网页。


home就和homeController有关。

Shared里面放置的就是母版页,错误页。

Global.asax是定义路由的。

Web.config就是配置文件。

ASP.NET是微软官方提供的框架。

HttpHandler是ASP.NET底层机制。如果直接使用他,则开发难度大,工作量大。MVC封装框架,简化开发。

asp.net MVC采用了MVC思想,更适合现代项目的开发,因此ASP.NET mvc逐步取代了ASP.NET webform.

为什么说ASP.NET MVC更好?程序员有更强的掌控力,不会产生垃圾代码。程序员能更清晰控制运行过程,因此安全,性能,机制更加安全。

控制器把数据传给Model,Model再给View。然后View再给Model,再给控制器。

Model负责View和控制器之间进行数据的传递。用户输入的内容封装为Model对象,发送给Controller.要显示的数据由controller放到Model,Moel在扔给View.Controller不和View不直接进行交互。

ASP.NET MVC跟三层没有任何关系。

约定大于配置:配置文件就是地狱。

新建一个控制器。其实和新建一个类没什么区别。

会自动生成一个test文件夹


在text下添加视图


在模型类中增加


controller添加逻辑


cshtml模板就是简化HTMl拼接的模板,最终还是生成html给浏览器显示,不能直接调用cshtml文件。

cshtml叫做Razory模板,

Razor语法非常简单,@后面是c#语句,其他的html代码。

@{string a ="abc"; }c#代码块


razor可以智能识别是html代码还是c#代码


其实归根到底是@,只要有@,razor就会识别为c#代码,html要加标签

@:则表示是html代码。或者可以用替代

razor还可以只能识别邮箱


@*注释内容*@


注释

虚拟路径


如果bool类型为false,则默认不会被渲染。


总结

MVC讲究页面的代码不要太复杂,复杂的代码写到控制器里面。

Controller给View传递数据的方式。


可以采用viewdata键值对的方式

dynamic 是动态类型。好处是灵活,坏处是开发的时候不容易发现错误,性能低。


可以动态的增加属性


var编译

匿名类型:(需要注意的是,匿名类型是只读的,不能赋值)


ViewData和ViewBag的区别

VIewBage是dynamic类型的参数,是对dataView的动态封装,用起来比较方便,和ViewData共同操作数据。

而我么做数据传递,用以上两种方式比较龌龊,所以我们用model。

视图分为强类型视图和弱类型视图。

运用强类型会有字符提示。

弱类型:


弱类型这里点的时候是自动出不来的

因为上面没有加


而一般尽量用强类型视图

关于Action的参数,action 就是controller中的方法



action方法


像这种普通传参,不会有默认值

以下就是三种赋值的方法


ActionRsult没有重载


但是可以通过 [HttpPost]和 [HttpGet]来实现

如果传输的是文件,那么


你可能感兴趣的:(ASP.NET mvc创建第一个项目)