我有以下代码,根据用户在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))
答案 0 :(得分:2)
我认为你的代码设计得不是很好。正确实现此目标的方法是使用 state 和 validation 。
所以主要有一个表单,它保存一个对象的当前值。我建议将相应的对象直接绑定到Web表单。无论是空还是空,这些值实际上是 set 。
一旦用户按下OK按钮,就会对相应的对象执行Save()
或Validate()
方法,并检查值的有效性。如果验证失败,取消保存过程并告诉用户相应地更新其输入。