質問

主体

して企業と呼ばれる製品ロード用設定によりどちらのモ.

製品カテゴリーの設定によりどちらのモ幸populatesました。

データベース

データベースに、製品は外国語の鍵を握る。

シナリオ

ユーザーの編集この製品は、webインタフェース)では,異なるカテゴリー(言の代わりに"魚"を選択し"Veg").

ではないだろうかドロップダウンリストは、各カテゴリーを示します。いることができないカテゴリを取得するint。

問題

明らかにしたい、変更を保存してください製品も影響の変化が新しいint(う2つのではなく、1)です。

この取得は、既存の製品は、この日は、今回の問題です。

どのような人が住んでいますか"カテゴリid"分野の製品においてカテゴリの物件です。

その思いを取得するカテゴリー(id)だけに割り当てます。

ねん知りたいです...

a)を追加カテゴリid産品

b)新しいカテゴリの割り当てに関連するidで、添付する製品が確実に起こすような誤りがあった場合や、上書き、既存のカテゴリー)

c)取得(ルックアップ)カテゴリーからシステム(id)を添付する製品の

d)僕ら!

役に立ちましたか?

解決

更新:たSession.loadは正解です

product.Category = session.Load<Category>(2);

session.Save(product);

他のヒント

あなたがたSession.load(ID)機能を使用することができるかもしれないように見えます。

たSession.loadは、あなたがロードし、その時点で別のプロパティを要求するまで、IDとプロキシを返す特殊なメソッドです。 IDに一致する項目がない場合は、エラーがスローされます。以下のようなものを試してみてください。

product.Category = Session.Load<Category>(2); //2 being the new category ID

Session.SaveOrUpdate(product);

私はほんの少しのテストを行なったし、全体のカテゴリを引き戻すようには見えなかった。

(文字列または番号を指定できます)は、それぞれのデータベース値を列挙型としてあなたのカテゴリーをマッピングするために使用NHのEnumStringType<T>。あなたはそれのためにグーグル場合は、かなりの数の使用例を見つけることができます。

HTH!

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top