【发布时间】:2016-07-02 12:04:54
【问题描述】:
我正在实例化一个 Associate 对象,并从我的主窗体内的 txtboxes 为其分配属性。空值检查的最佳做法是什么?是在分配之前使用 if 语句检查每个属性还是有更好的方法?这是我的代码:
Associate updateAssociate = new Associate();
updateAssociate.AssocID = txtAssocId.Text;
updateAssociate.FirstName = txtFname.Text;
updateAssociate.LastName = txtLname.Text;
updateAssociate.HireDate = Convert.ToDateTime(txtHireDate.Text);
updateAssociate.ContractEndDate = Convert.ToDateTime(txtContractEnd.Text);
updateAssociate.TerminationDate = Convert.ToDateTime(txtTerminationDate.Text);
updateAssociate.FullPartTimeID = cboFullPart.SelectedText;
updateAssociate.PrimaryRole = cboPRole.SelectedText;
【问题讨论】:
-
您究竟期望什么为空?所有控件将始终存在,除非您将代码放在错误的位置开始。 (或者自己动态创建控件?)
-
我希望您在 UI 上进行某种验证,除非填充了必填字段,否则您不允许用户创建和
Associate。余数应为string.Empty。 -
对不起,要清除控件的内容。如果它是一个文本框,那么它将是 .Text 属性,我想在将它们分配给对象之前检查空值或空白值。
-
@VinnyGuitara:目前还不清楚您要解决的实际问题是什么。除非有其他问题,否则发布的代码中似乎没有很高的空引用概率。对于分配的任何给定属性,如果值为 null,您还想做什么?
-
@David.... 所以如果我的表单是从数据库中填充的,然后我会从我试图处理的文本字段中实例化一个 Associate 对象,如果这些字段之一从DB 为空。
标签: c# oop properties null