私は本当に奇妙なものを持っています。
私はマスターと詳細の関係を持っています。これを Order と OrderItem と呼びましょう。フロント ページには注文のリストがあり、各行の横には編集ページに移動する [編集] リンクがあります。上部に注文の詳細を表示し、下部に注文項目の詳細を編集する必要があります。
ただし、「注文アイテム」フォームの「ID」非表示フィールドには、「注文」ID 値が表示されています。さらに奇妙なのは、DisplayFor が正しい値を表示し、HiddenFor と EditorFor が「Order」ID 値を表示することです。
ビュー モデルを使用して、コントローラーに入力する Razor ビューのマスター エンティティと詳細エンティティを含めています。
Order# = 16 および OrderItem# = 7 と仮定します。
そう :
@model vmOrder // ViewModel that contains myOrder and MyOrderItems.
@Html.EditorFor(m=>m.myOrderItems.First().Id) // Produce 16
@Html.HiddenFor(m=>m.myOrderItems.First().Id) // Produce 16
@Html.DisplayFor(m=>m.myOrderItems.First().Id) // Produce 7 which is correct.
最初のレコードを返すつもりだったので、他の理由で "First()" を返しました。MVCが混乱しているようです...
何かご意見は。私には最も奇妙に思えますか?
どうもありがとう、
サム