これは、.NETでのバディークラスの機能を使用することで実現できます。 .ebmxファイルにエンティティを作成したら、ビジネスクラスを定義するエンティティに付随する部分クラスを作成して、「バディクラス」で作成することができます。上記の例では
[MetadataType(typeof(ProductMetadata))]
public partial class Product {
internal sealed class ProductMetadata {
[DisplayName("Name")]
[Required]
public string Name { get; set; }
[DispayName("Price")]
[Required, Range(1,10000)]
public decimal Price { get; set; }
[DisplayName("Description")]
public string Description { get; set; }
}
}
は、すでに「名前」、「価格」、および「説明」のプロパティを持つオブジェクト・コンテキストで定義された「製品」タイプを持っていることを前提としています。
MetadataTypeAttributeで参照されるバディクラスタイプが一致するプロパティ名を持つ限り、バディクラスのプロパティに適用される属性は実装タイプに適用されます。
注:バディークラスに実装タイプと一致しないプロパティー名がある場合は、ランタイムエラーが発生します。ビジネスルールを適用するプロパティのバディークラスで一致するプロパティを作成するだけで済みます。すべてのプロパティはオプションです。
ここをクリックしてください:http://stackoverflow.com/questions/4619609/what-is-the-best-way-to-add-attributes-to-auto-generatedentity-using-vs2010 – Lazarus