检查对象属性是否有空值

 public ActionResult Create(crm_CompetitiveProducts cp)
        {
            using (var db = new BaseDbContext())
            {
                PropertyInfo[] propertys = cp.GetType().GetProperties();
                int a = 0;
                foreach (var i in propertys)
                {
                    if (i.GetValue(cp) == null)
                    {
                        a = a + 1;
                    }
                }
                if (a == 0)
                {
                    db.Insert<crm_CompetitiveProducts>(cp);
                }
                else
                {
                    this.ShowMessage("信息不全", "录入失败");
                    return RedirectToAction("Create");
                }
                return RedirectToAction("Index");
            }
        }
时间: 2024-08-05 15:23:27

检查对象属性是否有空值的相关文章

C#利用反射检查对象属性是否满足正则特性

有时对象的属性需要满足某些正则,若是单独创建方法去一个个验证这些正则太过麻烦,这时我们可以给属性添加正则特性,如下: public class student { [RegularExpression(@"^[a-zA-Z]{1,20}$", ErrorMessage = "英文姓名必须是英文字符,且长度小于20!")] public string EName { get; set; } } 可是有时候对象实例的生成会绕过这些正则检查,例如直接从Excel里数据流写

高性能 javaScript 之遍历对象属性

在面向对象的开发工作中,经常会遇到检查对象属性和遍历对象属性的情况. JavaScript 不包含如 java.C 等语言的传统类继承模型,而是使用 prototype 原型模型. JavaScript 原型链继承中属性查找过程 当查找一个对象的属性时,JavaScript 会向上遍历原型链,直到找到给定名称的属性为止.到查找到达原型链的顶部 - 也就是 Object.prototype - 但是仍然没有找到指定的属性,就会返回 undefined. 使用 for in 循环可以遍历对象所有的属

ja对象属性—枚举、检查、删除

前言 我们经常需要操作对象的属性.这里记录ES5中操作对象属性的API和它们之间的差异. 枚举属性 for/in遍历对象中的所有可枚举属性(包括自有属性和继承属性) var obj = {name:"小花",age:18}; var obj2 = Object.create(obj); obj2.like = "骨头"; for(item in obj2){ // 将obj中的所有可枚举属性名以字符串形式分别赋值给itemtypeof item; => str

详解Python对象属性

在面向对象编程中,公开的数据成员可以在外部随意访问和修改,很难控制用户修改时新数据的合法性.解决这一问题的常用方法是定义私有数据成员,然后设计公开的成员方法来提供对私有数据成员的读取和修改操作,修改私有数据成员时可以对值进行合法性检查,提高了程序的健壮性,保证了数据的完整性.属性结合了公开数据成员和成员方法的优点,既可以像成员方法那样对值进行必要的检查,又可以像数据成员一样灵活的访问. Python 2.x中属性的实现有很多不如人意的地方,在Python 3.x中,属性得到了较为完整的实现,支持

js对象属性的命名规则

JS标识符的命名规则,即变量的命名规则: 标识符只能由字母.数字.下划线和'$'组成 数字不可以作为标识符的首字符 对象属性的命名规则 通过[]操作符为对象添加属性时,属性名称可以是任何字符串(包括只包含空格的字符串和空字符串): 通过.操作符为对象添加属性时,属性名称必须是合法的标识符名称: 如果属性名包含非法的标识符字符,则只能采用obj["propertyName"]的形式: 如果属性名是合法的标识符,读取时即可以采用obj.propertyName,也可以采用obj["

201506230818_《JavaScript权威指南(第六版)——callee和caller、对象属性用作实参、自定义函数属性》(P175-180)

1. callee 正在执行的函数.使用方法:arguments.callee... caller 正在调用执行函数的函数. 2.对象属性用作实参,形如:function fn(arg) { var arg.name = name || 'Josn', arg.age = age || 60 , ... } 3. 在传入实参时候,宁愿在检查值类型时报错也不要在执行时候报错; 4. if(element == null) continue;  //过滤null或undefined元素; 5.  i

JS所有内置对象属性和方法汇总

JS三大对象 对象,是任何一个开发者都无法绕开和逃避的话题,她似乎有些深不可测,但如此伟大和巧妙的存在,一定值得你去摸索.发现.征服. 我们都知道,JavaScript有3大对象,分别是本地对象.内置对象和宿主对象. 在此引用ECMA-262(ECMAScript的制定标准)对于他们的定义: 本地对象 与宿主无关,独立于宿主环境的ECMAScript实现提供的对象. 简单来说,本地对象就是 ECMA-262 定义的类(引用类型). 这些引用类型在运行过程中需要通过new来创建所需的实例对象. 包

对象属性的增删改查、特性已经序列化

1)在javascript中,只有查询属性时才会体会到继承的存在,而设置属性则和继承无关,这使程序员可以有选择的覆盖继承的属性. 2)如果o继承了原型上的属性x,而这个属性是具有setter方法的存取器(accessor)属性,这时会调用setter方法而不是给o创建一个属性x. 注意: setter方法是由对象o调用的,而不是定义这个属性的原型调用的,因此setter定义任何属性,这个操作只针对o本身,而不会改变原型链. 3)属性访问并不总是返回或设置一个值,访问 null 或 undefin

原来JS是这样的 - 对象属性

引子 在上一篇(原来JS是这样的 (2))刚发布的时候就阅读了那篇文章的人可能会注意到那篇曾用过"JavaScript 中万物皆对象"的说法,而在随后我发现错误后立即更新改掉了这个错误的说法.另外上一篇实质上整篇都在描述 this 到底在什么情况下会绑定到哪个对象上,看上去 JavaScript 中的对象概念的确很容易让人困惑.再看下面一个例子: var strPrimitive = "I'm mamacat"; typeof strPrimitive; // &q