博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
初识 asp.net mvc(三)
阅读量:6656 次
发布时间:2019-06-25

本文共 1229 字,大约阅读时间需要 4 分钟。

今天我们来了解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]只能被登录的用户访问等

转载于:https://www.cnblogs.com/tjxy/articles/7150678.html

你可能感兴趣的文章
通过微信小程序看前端
查看>>
[LeetCode] Rotate Function
查看>>
iOS - 更轻量级的 AppDelegate - 面向服务设计
查看>>
什么样的爬虫才是好爬虫:Robots协议探究
查看>>
tomcat 部署多个项目的技巧
查看>>
yii2使用多个数据库的案例
查看>>
[LintCode/LeetCode] Search Insert Position
查看>>
Node处理http跨域请求
查看>>
Gradle for Android 第五篇( 多模块构建 )
查看>>
框架 也可以这样用 easy
查看>>
LCUI 1.1.0 Beta 发布,C 的图形界面库
查看>>
Base64
查看>>
MariaDB(mysql)之半同步复制及复制过滤器的使用
查看>>
WCF Ria Service 理解制图版本【待续】
查看>>
【IOS】高仿糗事百科客户端(基本实现了除注册,评论之外的功能)
查看>>
puppet之模块详解
查看>>
shell脚本
查看>>
python 模块
查看>>
Flash Builder生成asdoc格式的帮助文档
查看>>
分享实录 | 第四范式程晓澄:机器学习在推荐系统中的应用
查看>>