0

我有以下代码根据用户在 Web 表单中选择的内容设置某些对象(CarsCourse)值。

该代码有效,但我的一位同事表示这是最糟糕的做法。但是,他无法提出任何建议。

那么有没有更好的方法来实现这一点?

谢谢

    If Not String.IsNullOrEmpty(tbDisplayName.Text) Then CarsCourse.DisplayName = tbDisplayName.Text
    If Not String.IsNullOrEmpty(tbDescription.Text) Then CarsCourse.Description = tbDescription.Text
    If Not String.IsNullOrEmpty(tbOfficialStartDate.Text) Then CarsCourse.OfficialStartDate = DateTime.Parse(tbOfficialStartDate.Text)
    If Not String.IsNullOrEmpty(tbOfficialEndDate.Text) Then CarsCourse.OfficialEndDate = DateTime.Parse(tbOfficialEndDate.Text)
    If Not String.IsNullOrEmpty(tbBtmDatepicker1.Text) Then CarsCourse.VisibleStartDate = DateTime.Parse(tbBtmDatepicker1.Text)
    If Not String.IsNullOrEmpty(tbBtmDatepicker2.Text) Then CarsCourse.VisibleEndDate = DateTime.Parse(tbBtmDatepicker2.Text)
    If Not String.IsNullOrEmpty(ddlDepartment.SelectedValue) Then CarsCourse.SecondarySpecialtyName = ddlDepartment.SelectedValue
    If Not String.IsNullOrEmpty(ddlOptionType.SelectedValue) Then CarsCourse.OptionType = ddlOptionType.SelectedValue
    If Not String.IsNullOrEmpty(ddlOfficialName.SelectedValue) Then CarsCourse.OfficialCourseID = Guid.Parse((ddlOfficialName.SelectedValue))
4

1 回答 1

2

我认为您的代码设计得不是很好。正确实现这一点的方法是使用statevalidation

所以主要你有一个表单,它保存一个对象的当前值。我建议将相应的对象直接绑定到 Web 表单。无论是 null 还是空,这些值都是实际设置的。

一旦用户按下 OK 按钮,就会在相应的对象上执行Save()orValidate()方法,并检查值的有效性。如果验证失败,则取消保存过程并告诉用户相应地更新他的输入。

于 2013-03-18T16:40:19.950 回答