http://www.cnblogs.com/powertoolsteam/archive/2015/08/13/4667892.html
http://www.bootcss.com/
Bootstrap + jQuery + ASP.NET Core MVC + Entity Framework Core
MVC三层模型:
M:Model 业务逻辑层对实体类相应数据库操作,包括数据,验证规则,数据访问和业务逻辑等应用程序信息
V:View主要是提供用户交互的界面 。aspx ascx
C:Controller处理用户交互,,从Model中获取数据并将数据传递给指定的View。将view中的提交的数据保存到Model
业务逻辑层
表示层
数据访问层
约定:
控制器必须建立在Controllers文件夹下,并且必须以Controller结尾,如HomeController
视图必须建立在Views文件夹下:先建立一个与控制器同名的文件夹,如Home文件夹,然后在这个Home文件夹下建立视图,此视图的名称与控制器HomeController类中的Index方法要同名。
姓名<%=Model.Name %><br />
控制器向视图传递值时是传给了Model,如:在控制器中return View(Student) , 则在视图中是通过Model变量引用传递的值的。
路由规则:
{Controller} / {Action} / {Id}
Control表示控制器占位符
/ 表示分隔符
还可以放入常量:不放在大括号中的表示常量,如:Admin / {Controller} / {Action} / {Id} ,访问时要输入 http://localhost/Admin/Home/Index
还可以添加约束:constraints。比如defaults : new {controller="home"} ,constraints : new {id=@"\d{4}"}。使用正则表达式
当不确定参数个数时:路由规则可写成:{Controller} / {action} / {id} / {*all}。CS文件中对应的方法可写成 Index(string id , string all)
在view中链接到同一控制器下的其他视图:<a href="<% =Url.Action("Show") %>">显示页面</a>
给控制器中的方法(动作)取个别名:如ActionResult Index(){ return View()} ,可以这样:
[ ActionName("Default")]
ActionResult Index(){return View()}
同时,视图的名称也要用别名的名称,
这样访问的时候可以用 Http://localhost/ Home / Default ,而不用Http://localhost / Home / Index .
给控制器中的方法(动作)指定请求方式(Get、Post)可以这样:
[ HttpGet] 表示用Get方式请求Index方法的视图页面
ActionResult Index(){ return View()}
ActionResult的子类:
ViewResult
PartialViewResult //部分视图
New EmptyReslt() //空,如统计
ContentResult //用于返回字符串 , return Content(" 我是字符串")
FileResult //响应文件,返回文件的内容
JavascriptResult的子类:
JsonResult
RedirectResult //重定向