asp.net-mvc – 在MVC 3模型ID属性中将ScaffoldColumn属性设置为False的真正优势是什么
|
我是MVC的新手,当我为代码第一种方法构建我的模型类时,每个键ID列都设置了[ScaffoldColumn(false)]属性.我这样做是因为我不希望显然在视图中显示ID,我知道解决这个问题的方法是删除包含ID字段的每个视图中UI生成的 HTML. 我在模型中使用ScaffoldColumn设置为false时遇到的问题首先被注意到,当视图的Edit方法被触发时,我收到此错误:存储更新,插入或删除语句影响了意外的行数(0 ).当我在调试中运行代码时,ID属性实际上设置为零,如我的视图Edit HttpPost方法所示. 我希望有人可以详细说明我的问题,如果没有将ID发送到控制器方法(例如编辑HttpPost),那么在MVC中使用像ScaffoldColumn这样的属性是什么意思?我应该采用旧时尚方式,并删除由此属性未添加到键/外键属性时生成的MVC模板创建的每个视图中的HTML标记? 我找到的工作是,如果将此属性设置为false,则为每个HttpPost方法添加一个ID参数,然后在调用SaveChanges()之前设置相应的ID属性字段. 解决方法好吧,你不希望它被搭建成一个可编辑的字段,但当然你确实想要它在表单中,正如你所注意到的那样.解决方案是将其手动添加为视图中的隐藏字段.像这样的东西:@Html.HiddenFor(model => model.id) (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- .net-core – 用于.NET Core控制台应用程序的ASP.NET Core配
- asp.net-mvc – 如何用ASP.NET MVC命令查询责任分离(CQRS)?
- asp.net-mvc-4 – Quartz.NET触发器不会触发,MVC4
- asp.net-mvc – 使用存储库模式来支持多个提供程序
- asp.net-mvc – 将参数传递给telerik asp.net mvc grid
- asp.net-mvc – 405消息,Web Api不允许的方法
- asp.net-mvc – ASP.NET MVC运行IIS7部署问题
- asp.net-mvc – Razor视图引擎.cshtml页面中的OutputCache
- asp.net-mvc – 从ModelMetaData获取另一个属性的值
- asp.net-mvc-3 – ASP.NET MVC 3: – 使用数据库而不是资源
- asp.net-mvc-3 – mvc3 – 在不同的区域使用部分
- asp.net-mvc – ASP.NET MVC多站点SSO使用OpenID
- asp.net-mvc – MVC路由错误:约束条目’长度’
- asp.net – 以编程方式将CSS类添加到ListItem
- 尝试将AutoMapper用于具有子集合的模型,在Asp.Ne
- .net – 为每个操作设置MaxAllowedContentLength
- asp.net-mvc – ValidationMessage仅适用于model
- ASP.NET Active Directory成员资格提供程序和SQL
- asp.net-mvc – 如何将模型传递给部分视图
- asp.net-mvc-2 – 如何在ASP.NET MVC2中为Html.L
