我有一個對象有一個業務規則列表,當對象被驗證時被檢查。避免「非常量字段不應該是可見的」代碼分析警告
在我創建類型BusinessRule的靜態字段,如下圖所示的類的頂部: -
public class SyncFile : Waterstons.Patterns.Entities.BaseEntity<Guid>
{
public static BusinessRule NameRequiredRule = new BusinessRule("Name", "The audit file must have a name");
....
protected override void Validate()
{
if (Id == default(Guid))
{
AddBrokenRule(IdRequiredRule);
}
....
這導致代碼分析抱怨說我不應該有公共領域,除非他們是常數。我不確定我可以根據我如何使用它們將它們定義爲const。
那麼有沒有更好的方法來解決這個問題?我應該將它們暴露爲下面的屬性嗎?
public static BusinessRule _nameRequiredRule = new BusinessRule("Name", "The audit file must have a name");
public static BusinessRule Test
{
get { return _nameRequiredRule; }
}
或者有沒有更好的方法來解決這個問題?
也使用'readonly'。 – leppie