2 z6851405 z6851405 于 2015.07.27 10:20 提问

C# web 开发 MVC 模型数据验证 必填项

问题是:
在开发网站的时候.有一个页面是增加产品和编辑产品共用.
为了在编辑的时候.方便ID的获取.在页面上添加隐藏的绑定模型的控件.
在后台数据验证端.该字段并没有设置必填.而前台页面却提示必填.导致没法进行.
input class="input-validation-error" data-val="true" data-val-number="字段 PlaProductId 必须是一个数字。" data-val-required="PlaProductId 字段是必需的。" id="PlaProductId" name="PlaProductId" type="hidden" value="" />

图片说明

3个回答

u012401478
u012401478   2015.07.27 10:25

判断,,跳过验证此字段

z6851405
z6851405 有根本解决方案会更好一点.
接近 3 年之前 回复
z6851405
z6851405   2015.07.27 10:52

原因是这样的:
在添加的时候.绑定的话,会出现id 为null int类型不会null 在该类中初始化,以及变量定义时, private int id 改为 private int? id 就是对的了.
感谢U012401478

caozhy
caozhy   Ds   Rxr 2015.07.27 11:00

首先,viewmodel和model应该分开,其次,不要偷懒把model分享给不同的view,这都是违反设计原则的

z6851405
z6851405 那有一些什么规则呢? 有没类似的设计原则? 请指点下.
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
MVC 3 数据验证 Model Validation 详解
随笔- 61  文章- 2  评论- 611  MVC 3 数据验证 Model Validation 详解 继续我们前面所说的知识点进行下一个知识点的分析,这一次我们来说明一下数据验证。其实这是个很容易理解并掌握的地方,但是这会浪费大家狠多的时间,所以我来总结整理一下,节约一下大家宝贵的时间。 在MVC 3中 数据验证,已经应用的非常普遍,我们在
ASP.NET MVC实体类(属性类)数据验证
引入名称空间:System.ComponentModel.DataAnnotations; 在需要验证的属性上添加特性: Required 不为空验证  Range 范围验证  StringLength 字符串长度验证 主要使用以上三个特性实现验证,它们的构造方法命名参数 ErrorMessage 指定验证失败时显示的错误消息。 下图示意:
EF Code First数据提交前进行模型验证/数据验证
1.执行sql前数据验证,如果失败抛出异常,验证失败信息,在注释方法中可以自定义 /// /// 模型验证 /// public bool IsValided(T model) where T : class { DbEntityValidationResult vResult = Context.Entry(model).GetValidationResult(); if
MVC前后台验证方法
Mvc后台验证 验证特性: Requied –必填验证; compare比较验证; stringlength字符串的长度;Range 数字(整数和浮点)、时间等类型的数据范围验证 1、  添加引用 usingSystem.ComponentModel ; usingSystem.ComponentModel.DataAnnotations ; using System.Web.Mv
在WebApi2中使用模型验证
很多时候我们在接收到客户端提交过来的请求之前,要验证一下数据合法性再执行操作。   数据注解Data Annotations     在WepApi中可以使用System.ComponentModel.DataAnnotations命名空间的属性,在你的model类中设置属性,来实现验证。 考虑以下场景: using System.ComponentModel.DataAnnota
mvc3中如何验证枚举类型?
实体类中有一个字段是枚举类型,把它绑定到下拉列表框中后,验证机制不起作用,如何解决?
ASP.NET中Textbox后的必填验证控件RequiredFieldValidator的使用方法。
制作效果如下: 实现方法: 1. 拖动RequiredFieldValidator控件到相应的textbox后位置,点击属性面板,输入ErroMessage相应信息,更改ForeColor为红色 设置ControlToValidate为相应的要验证的TextBox控件, 2. 在webconfig文件中记得添加如下代码:         即可达到如图效果。
ASP.NET MVC 数据验证
本篇文章跟大家分享关于ASP.NET MVC的数据验证,主要内容如下: 1. 了解数据验证 2. 显式地添加验证 3. 显示验证结果 4. 使用元数据进行验证 5. 执行客户端验证 6. 避免对ORM对象的标注在重新编译时被覆盖掉了解数据验证在使用ASP.NET MVC框架进行开发时,什么时候会进行数据验证呢?首先在用户提交表单钱,需要对用户的输入进行验证,这个过程一般由程序
向MVC的Model中添加验证
向MVC的Model中添加验证特性:MVC的服务端验证流程是这样的: 客户端请求—>Route解析—> model绑定—> 数据验证.举个栗子:public class Model { public int ID { get; set; } [StringLength(60, MinimumLength = 3)] public string Name { get; set;
MVC进阶篇(三)——model层数据验证
前言   常常在想,姓名性别那些个验证,真的有必要每次遇到,每次写验证吗?好麻烦,于是学到MVC这里,发现MVC自带数据验证,这个东西着实是个好东西。我写了一个小demo,分享给大家。 内容   一个表单的提交,进行相应的验证。微软提供的MVC中的model层数据验证。 Demo Model层 using System.ComponentModel; using System.Comp