我有一个带有文本框,下拉列表等的表单。如果通过按保存按钮进行了某些更新,我会创建一个注释,例如,如果用户更改了国家名称。
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] 删除。
我来说两句