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"属性将不会被绑定。这通常用于安全考虑,防止用户修改敏感信息。

相关推荐
William_cl3 小时前
【ASP.NET进阶】Controller 层基础:从 MVC 5 到 Core,继承的奥秘与避坑指南
后端·asp.net·mvc
百花~3 小时前
Spring Web MVC~
前端·spring·mvc
吴名氏.4 天前
电子书《ASP.NET MVC企业级实战》
后端·asp.net·mvc·编程语言
凌波粒4 天前
SpringMVC基础教程(1)--MVC/DispathcerServlet
java·spring·mvc
天若有情6735 天前
从零实现轻量级C++ Web框架:SimpleHttpServer入门指南
开发语言·前端·c++·后端·mvc·web应用
William_cl7 天前
C# ASP.NET MVC 数据验证实战:View 层双保险(Html.ValidationMessageFor + jQuery Validate)
后端·c#·asp.net·mvc
代码栈上的思考7 天前
Spring MVC 中 @RequestMapping 路径映射与请求处理全流程
java·spring·mvc
WZTTMoon7 天前
Spring MVC 核心工作原理:DispatcherServlet 全流程深度解析
java·spring·mvc
程序员buddha7 天前
springboot-mvc项目示例代码
java·spring boot·mvc
alien爱吃蛋挞9 天前
【JavaEE】Spring Web MVC(下)
spring·java-ee·mvc