0

たとえば、CompanyName; の単一のプロパティを持つ Customer クラスを含む dbml ファイルがあるとします。

public partial class Customer : INotifyPropertyChanging, INotifyPropertyChanged
private string _CompanyName;
public string CompanyName
{
  get

さて、上記が dbml にあり、このように生成されていることを考えると、疫病のように編集することは明らかに避けるべきです。

だから私はそのような別のクラスを作成しました;

public partial class Customer
{
    [Required]
    public string CompanyName{get;set;}
}

理由は自分のフィールドを必要に応じて飾りたいからです。

ただし、「... 'CustomerID' の定義が既に含まれています」というコンパイル エラーが発生するため、これは機能しません。

誰かがこれを回避する方法を知っていますか、またはフィールドを必須としてマークするか、モデルを検証するためのより良い方法はありますか?

4

2 に答える 2

1

または、ViewModel パターンを使用することもできます。これにより、ドロップダウンなどを使用する場合に、モデルをビューにバインドする柔軟性も得られます。AutoMapper で使用します。

于 2010-06-22T04:37:49.053 に答える
1

解決策は、データ検証注釈を含む追加のクラスでMetadataType属性を使用することです。

参照: http://weblogs.asp.net/scottgu/archive/2010/01/15/asp-net-mvc-2-model-validation.aspx

于 2010-06-22T04:26:04.820 に答える