检查表单中的字段是否已填写

user123456789

我有一个带有文本框,下拉列表等的表单。如果通过按保存按钮进行了某些更新,我会创建一个注释,例如,如果用户更改了国家名称。

if (cust.CountryName.ToString() != ddlCountry.SelectedItem.Text)
{
    Customer.Notes.InsertNote(cust.ID, Company.Current.CompanyID, DateTime.Now, "Country changed from '" + cust.CountryName + "' to '" + ddlCountry.SelectedItem.Text + "'", CurrentUser.UserID, 1);
}

将创建一个注释,说明更改的内容,用户和日期和时间。

对于表单中的不同字段,我有很多类似的if语句,但是我想为所有不需要特殊注释的字段创建注释。对于某些字段,我只想创建一个注释,例如:

Customer.Notes.InsertNote(cust.ID, Company.Current.CompanyID, DateTime.Now, "Customer updated" , CurrentUser.UserID, 1);

到底更改了什么都没有关系。我只想知道客户表单已更新。

有没有一种方法可以检查表单中的其他字段,而无需为每个字段创建单独的if语句?基本上,如果某事已更新且不是if语句中的任何一个,则创建注释“客户已更新”。因此,当按下保存按钮时,它将运行所有这些if语句,检查是否进行了任何更改。

布罗特斯·韦姆布

此聊天中,我们提出了针对这种特殊情况的答案如果没有触发if语句,则期望的行为是编写一般注释。

添加一个属性以跟踪字段的更改:

public bool HasChanges { get; set; }

if由于属性已更改(自原始帖子),因此在每个现有行中添加一行以将其设置为true:

if (cust.CountryName.ToString() != ddlCountry.SelectedItem.Text)
{
    Customer.Notes.InsertNote(cust.ID, Company.Current.CompanyID, DateTime.Now, "Country changed from '" + cust.CountryName + "' to '" + ddlCountry.SelectedItem.Text + "'", CurrentUser.UserID, 1);
    HasChanges = true;
}  

如果if尚未触发其他语句,则添加最后一个if语句以编写一般注释

if (!HasChanges)
{
    //Write general note
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章