我很好奇爲什麼使用好友類進行數據驗證。考慮以下示例,其中MyEntity
是Linq-to-SQL或Linq-to-Entities實體,下面的類是增強實體的部分類。爲什麼好友類用於驗證?
[MetadataType(typeof(MyEntity.MyEntityMetadata))]
public partial class MyEntity
{
private class MyEntityMetadata
{
[Required(ErrorMessage = "The title is required.")]
public string Title { get; set; }
}
}
爲什麼設計如此呢?當他們設計DataAnnotations時,爲什麼選擇這個「夥伴模式」?爲什麼不直接在實體中放置屬性?
我的理解是它可以讓你擴展設計師的特色。你不願意調整元屬性,只是爲了讓你的下一個設計師更新所有元素。 – 2011-02-24 20:05:11
單一責任本金? – 2011-02-24 20:05:23