我有一個DataContract類,我必須填寫來自我們公司的Active Directory的值。適當使用自定義屬性?
[DataContract(Namespace = Global.Namespace)]
public class UserProfile
{
[DataMember(IsRequired = true, EmitDefaultValue = false)]
public string EmployeeID { get; private set; }
[DataMember(IsRequired = true, EmitDefaultValue = false)]
public string GivenName { get; private set; }
...
public static readonly string[] PropertiesToLoad = new[] { "EmployeeID", "GivenName" };
}
我正在考慮做一個自定義屬性來裝飾我的屬性,因此,這將填補我的對象從廣告的代碼就不需要有映射硬編碼的,但更願意我可能只是裝飾性自動填充對象。
從長遠來看,我可能也能夠擺脫這種「PropertiesToLoad」。你認爲屬性是解決這個問題的好方法嗎?還有一個問題,如果我通過屬性來解決這個問題,我可能會造成巨大的性能瓶頸,或者使用Attributes不是真正的性能問題。