net core mvc 数据绑定 《2》

mvc core 模型绑定 控制绑定名称

》》》Bind 属性可以用来指定 模型应该 绑定的前缀

csharp 复制代码
public class MyController : Controller
{
    [HttpPost]
    public ActionResult Create([Bind(Prefix = "MyModel")] Ilist<MyModel> model)
    {
        // 模型绑定将尝试从请求的表单数据中绑定以"MyModel"为前缀的字段到model参数
        if (ModelState.IsValid)
        {
            // 执行相关操作,例如保存到数据库
            return RedirectToAction("Index");
        }
 
        return View(model);
    }
}

在这个例子中,Bind(Prefix = "MyModel")指定了模型应该绑定的前缀为"MyModel"。这意味着控制器操作Create在接收到HTTP POST请求时,会尝试从请求的表单数据中绑定以"MyModel"为前缀的字段到MyModel类型的参数。

cshtml 复制代码
 <form  method="post" action =''My/Action''>
  <input name="MyModel" id="xx" type="text" />
  <input name="MyModel" id="xxxx" type="text" />
  <input name="MyModel" id="xxxxx" type="text" />
 </form

另外,Bind属性也可以用来指定不应该绑定哪些属性:

csharp 复制代码
public class MyController : Controller
{
    [HttpPost]
    public ActionResult Edit([Bind(Exclude = "Salary")] Employee model)
    {
        // 模型绑定将尝试绑定除"Salary"以外的所有字段
        if (ModelState.IsValid)
        {
            // 执行更新操作
            return RedirectToAction("Index");
        }
 
        return View(model);
    }
}

在这个例子中,Bind(Exclude = "Salary")指定了在模型绑定时,"Salary"属性将不会被绑定。这通常用于安全考虑,防止用户修改敏感信息。

相关推荐
摇滚侠28 分钟前
JavaWeb 全套教程 MVC 模式 93
mvc
代码的小搬运工8 小时前
【iOS】MVC架构
ios·架构·mvc
qq_2518364572 天前
基于MVC的学校食堂点餐管理系统的设计与实现
mvc
故渊at2 天前
系列一:架构思想进阶 | 第1篇 Android 架构演进实录:从 MVC 的“万能类”到 MVVM 的数据驱动
android·架构·mvc
RR13352 天前
Spring MVC and Spring Gateway 的差异,以及报错处理
spring·gateway·mvc
gCode Teacher 格码致知3 天前
AspNet Mvc教学:Route路由切换-由Deepseek产生
mvc
gCode Teacher 格码致知4 天前
Asp.net Mvc教学: Url.Encode及Html.Encode的区别和联系-由Deepseek产生
asp.net·mvc
sakiko_9 天前
Swift学习笔记34-MVC架构,SwiftUI与UIkit混编练习
笔记·学习·swiftui·mvc·swift
止水编程 water_proof10 天前
Spring Web MVC 入门
前端·spring·mvc
Mahir0812 天前
Spring MVC 深度解密:从 DispatcherServlet 到请求处理全流程
java·后端·spring·面试·mvc