zoukankan      html  css  js  c++  java
  • 20120520晚

    在传智学习有一个多月了,用一句话来形容就是痛并快乐着,老师讲课听激情的,课后的练习很煎熬的,我喜欢这种煎熬的过程,凤凰涅槃,百炼成钢就是这个道理

    下面送上关于三层中的关于空值的问题的总结 1.在Model中如果遇到可空值类型(值类型)则可以这么写(为了方便这里都以int为例) public int? Age { get; set; } 2.在数据访问层(DAL层) 在数据访问层提供的占位参数(这里没有值,后来才给他赋值) //数据库判断为空的话应该为DBNull.Value //而DBNull.Value的类型为DBNull类型 所以为了可以达到转换, //后面应该为object 这里是给数据库赋值 SqlParameter[] pms=new SqlParameter[]{ new SqlParameter("@age",model.age==null?DBNull.Value:(object)model.age) }; 此时不可以为int?因为int?只能判断是否为空和整型 给C#赋值为null,给数据库赋值为DBNull 这里是从数据库取值 person.age=reader.isDBNull(2)?null:(int?)reader.getint32(2) 3.在业务逻辑层(BLL层) 4.在表现层(UI层) 由于年龄可以为空,所以用户可以再文本框中不输入 如果不输入则文本框为空字符串, 如果输入则要以整型保存 //字符串的空值判断为string.Empty //为了后面的匹配, //应该让后面的两个类型相同或者可以隐式转换,也可以是多态,用前面的接收即可 下面这个是从TEXT中取值 Person.Age=txtage.Text.Trim()==string.Empty?null:(int?)Convert.ToiNT32(txtage.Text.Trim()); 下面是给text赋值 txt.text=row.cell[0].value==null?string.Empty:row.cell[0].value.tostring();
  • 相关阅读:
    day31-python之内置函数
    day30-python之socket
    day28-python之property
    day27-python之迭代器协议
    day26-python之封装
    day25-python之继承组合
    初识AJAX
    写博客的心得
    web前端常见面试题
    学习网络安全的网站
  • 原文地址:https://www.cnblogs.com/lipengjiushiwo/p/2512258.html
Copyright © 2011-2022 走看看