asp.net.core教程(翻译自微软官方文档https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-mvc-app/adding-controller)
本教程会教你使用vs2017去搭建基础的asp.net.core服务程序。
本教程教授asp.net.core的控制器和视图。
Razor页面是使用asp.net.core的新的选择
MVC代表model(模型),view(视图),controller(控制器)
Model:表示应用的数据,用于确认业务数据的逻辑规则。常用于存储数据库。
View:视图展示了给用户看的界面。通常情况下,界面上显示的是Model里面的数据。
Controller;用于处理浏览器的请求。从model中获取数据然后交给需要响应的view。
在一个MVC程序中,view只显示信息,controlle负责响应用户的请求以及交互。
MVC模式是你能够将应用分成不同的部分(输入逻辑,业务逻辑,界面逻辑),并使各部分成为一个松散的结合体。
分成不同的部分有助于你处理复杂的应用,每次修改只需要关注其中的一部分,并且不会影响其他部分。
每个controller里面的公共方法被成为http的末端。注意每个方法前面的注释(表示访问controller类的对应的网址)。
在网页程序中。每个http末端是一个有效的url。
MVC根据下一个要被选择的URL唤醒对应的control类,如http://localhost:62474/HelloWorld/Welcome/3?name=jack
此处修改MVC默认起始页
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
上面的id可以作为默认查询字段的标志,不需要写字段名称。
http://localhost:62474/HelloWorld/Welcome 可以不带参数,不带则为默认值。
HtmlEncoder.Default.Encode 官方上面的core无法应用System.Web.dll,改为使用WebUtility.HtmlEncode,引用System.Net;
格式化可以防止恶意的攻击。
$"Hello {name}, NumTimes is: {numTimes}" 表示内插字符串。