私はpro asp.net mvc 2.0フレームワークを使用していますが、彼はまた、彼のデータ注釈タグを、SQLにlinqを生成するクラスに配置しているようです。データ注釈タグはどこに配置しますか?
[Table(Name = "Products")]
public class Product
{
[HiddenInput(DisplayValue = false)]
[Column(IsPrimaryKey = true, IsDbGenerated = true, AutoSync = AutoSync.OnInsert)]
public int ProductID { get; set; }
[Required(ErrorMessage = "Please enter a product name")]
[Column] public string Name { get; set; }
[Required(ErrorMessage = "Please enter a description")]
[DataType(DataType.MultilineText)]
[Column] public string Description { get; set; }
[Required]
[Range(0.01, double.MaxValue, ErrorMessage = "Please enter a positive price")]
[Column] public decimal Price { get; set; }
[Required(ErrorMessage = "Please specify a category")]
[Column] public string Category { get; set; }
[Column]
public byte[] ImageData { get; set; }
[ScaffoldColumn(false)] [Column]
public string ImageMimeType { get; set; }
私はこのようにデータベースを開発しないとどうなるのでしょうか。 linqtosql.dbml(linq to sqlクラス)ファイルを私のソリューションに追加するだけで、素晴らしいデザイナーを得ることができます。
私はこれらのデータ注釈をどこに置くのですか、私はこのコンテンツをすべて持っている別のクラスを作りますか?あるいは、ビューモデルでは?
基本的には、生成された各テーブルの部分クラスを作成し、次にこの部分クラスで検証データを入れます。 – chobo2
すべてのプロパティの検証属性を定義するインターフェイスを作成し、MetadataType属性を持つ部分クラスを作成します。部分クラスにMetadataType属性を渡すと、プロパティ属性がそのクラスの適切なプロパティに適用されます。 http://weblogs.asp.net/scottgu/archive/2010/01/15/asp-net-mvc-2-model-validation.aspxまたはhttp://goneale.com/2009/03/04/usingをご覧ください例として、-metadatatype-attribute-with-aspnet-mvc-xval-validation-framework /を使用します。 –