Mvc中表单提交的文本控件的name属性的重要性

这是我的个人疏忽吧,做事情不够严谨,搞得自己纠结的半天,那么现在聊聊我的错吧

修改数据的时候,一直抱一个错:对一个或多个实体的验证失败。有关详细信息,请参见“EntityValidationErrors”属性。

看下面的代码:

<form action="/Home/Modify" method="post">
       <input type="hidden" value="@Model.Id" name="Id" />
       <table>
            <tr>
               <td>名字</td>
               <td>
                   <input type="text" value="@Model.SName" name="sname"/>
               </td>
           </tr>
           <tr>
               <td>年龄</td>
               <td>
               <input type="text" value="@Model.Age" name="age"/>
               </td>
           </tr>
           <tr>
                <td>描述</td>
                <td>
                <input type="text" value="@Model.Descri" name="descri"/>
                </td>
          </tr>
      </table>
      <input type="submit" value="确定" id="btn" />
</form>

大家可以看到html控件中有一个name属性,如果没有这个name属性的话,Mvc里的表单提交就无法将控件的值作为对象的值提交到Action里面去,而且name的值必须对应属性名

对Mvc初学者来说,这种小错很致命,一定要注意

原文地址:https://www.cnblogs.com/Vam8023/p/2976011.html