初识 asp.net mvc(三)
今天我们来了解mvc的几个概念:惯例优先、路由、模型绑定、操作过滤器
1.惯例优先:首先,申明叫惯例优先,就是一般都是这样处理的,
例如:控制器就放在Controllers文件夹下、模型就放在Models文件夹下、视图就放在Views文件夹下、控制器都以Controller最为结尾等

2.路由:
在程序启动的时候注册路由,使用的扩展方法是MapRoute(),位于APP_Start/RouteConfig.cs文件里
routes.MapRoute(
name: "Default", //路由名字
url: "{action}/{controller}/{id}",//Url参数
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }//默认参数
);
3.模型绑定
[HttpPost]
public ActionResult Edit(Stock model)
{
if (model.Id == 0)
{
model.AttentionRate = model.AttentionRate>0?model.AttentionRate:3;
model.FollowTime = DateTime.Now;
model.CreateTime = DateTime.Now;
model.CreateUser = 0;
TJModels db = new TJModels();
db.Stocks.Add(model);
db.SaveChanges();
}
return View("Index", model);
}
这段代码中,mvc会自动查找model对应的参数,讲参数名与字段名一致的参数值赋给实体对应的字段
4.操作过滤器
[HttpPost]
public ActionResult Edit(Stock model)
{
if (model.Id == 0)
{
model.AttentionRate = model.AttentionRate>0?model.AttentionRate:3;
model.FollowTime = DateTime.Now;
model.CreateTime = DateTime.Now;
model.CreateUser = 0;
TJModels db = new TJModels();
db.Stocks.Add(model);
db.SaveChanges();
}
return View("Index", model);
}
[HttpPost]就是过滤器,过滤此操作只能被post请求访问,还有[Authorize]只能被登录的用户访问等

浙公网安备 33010602011771号