1

私は興味深い問題を抱えており、他の誰かがこれを見たかどうかを確認したかったのです。VisualStudio2010ベータ2を使用してMVC2サイトを作成しました。データ注釈付きのデータモデルオブジェクトをSQLするためにlinqを使用しています。

私のデータモデルオブジェクトでは、[ScaffoldColumn(false)]属性を使用して、EditorForModelメソッドを使用するときに外部キーIDをUIへのレンダリングから除外しています。何らかの理由で、UIは外部キーテーブル名をレンダリングしています。

たとえば、外部キーがAccountIDの場合、「アカウント」が表示されます。

これがeditorformodelのバグなのか、それとも別の/追加のデータ注釈属性を使用して、editorformodelに何もレンダリングしないように指示する必要があるのだろうか。

4

1 に答える 1

1

Linq to SQLクラスには、外部キー自体のプロパティ(AccountID)と、Accountsテーブルの関連レコードのEntitySetプロパティがあります。自動生成されたdesigner.csファイルをlinqからsqldbmlに開くと、各クラスのすべてのプロパティを表示できます。デフォルトでは、テンプレート化されたヘルパーは、最初のレベルのプロパティのエディターのみを生成することになっていると思います。生成されたエディタをより多くのレベルのプロパティに拡張する「詳細」オプションがあります。このテーマに関するBradWilsonのブログをチェックしてください(投稿の終わり近く)。

一般に、自動生成されたLinq to SQLクラスをビューにスローしたり、属性で注釈を付けたりしようとすると、かなり面倒になります。ビューに表示したいプロパティのみを指定できる、強く型付けされたビューモデルを確認する価値があるかもしれません。

于 2010-01-18T05:16:14.580 に答える