rt
比如:
public string Name
{
    get{return name;}
    set{
           if(!string.IsNullOrEmpty(value))
           { 
               name=value;
           }
           else
           {
               throw new Exception("");
           }
       }
}

解决方案 »

  1.   

    楼主认为呢?如果前台接收数据的地方Validation很严格,或者再上一个层里也有验证的代码,也就是层层关卡不让非空数据进到这个字段里,那我觉得没必要吧。但,如果这个字段的值不止是来自有关卡的界面等,来源很复杂,那么有必要检查。其实vs里根据数据库表生成的TypedDataSet里DataTable字段也应该是根据数据库表的约束自动生成了楼主这样的代码的。
      

  2.   

    可以。一般来来说,OO设计要首先抛开关系数据库等思维。凡是逻辑的约束,都应该在逻辑层体现出来,你写出的程序而跟你最终使用什么数据库没有关系。例如也许你使用Excel、XML、云计算服务来保存数据,那么你只是切换DAL代码,而DAL不影响业务逻辑的表达。当然实际上,如果开发人员设计方面的技术比较初级,很喜欢找出理由把OO业务模型的设计跟具体的关系数据库实现扯在一起。