1

更新しようとしている Linq 2 SQL オブジェクトがあります。このオブジェクトの 2 つのプロパティは互いに関連しており、1 つを設定するともう 1 つが設定されます。

だから私がするなら:

Foo.Code = BEER;

Foo.CodeID プロパティは自動的に 5 (またはその他) に設定されます。

問題は、LinqDataSource が Foo.Code を設定し、すぐに Foo.CodeID を設定することです... ユーザーにコードだけを設定してもらいたいので、これは何にもバインドされていません。これにより、両方がすぐに null に戻されます。

Parameters をデフォルト値に使用できることはわかっていますが、LinqDataSource にプロパティを設定しないように指示する方法はありますか?

編集: 隠しフィールドを作成し、フォームビューの ItemUpdating イベントで正しい値を割り当てることで問題を回避しました。ただし、同じルックアップを 4 回行うことは避けたいと思います...

4

1 に答える 1

0

Code プロパティを非公開にし (dbml で Code プロパティを選択し、[プロパティ] ウィンドウでアクセス プロパティを設定)、さらに制御できる新しいパブリック プロパティを作成するオプションはありますか?

私は個人的に必要なファイル (sqlmetal など) を生成するジェネレーターを作成し、コードを完全に制御できるようにしました。生成された dbml が気に入らない場合は、おそらくこれもオプションです。

于 2009-02-06T22:26:24.040 に答える