1

このモデルを部分メソッドで渡そうとしています

@Html.Partial("_RefillModal",new Refill()
                                     {
                                         PatientId=Model.Id
                                     })

_RefillModal で、Model.PatientId を実行して、PatientId を読み取ろうとしています。しかし、私は値を取得していません。

これを行うことでIDの値を取得できます

@Html.Partial("_RefillModal",new Refill(),new ViewDataDictionary(){{"PatientId",Model.Id}})

これが私が部分ビューでやろうとしていることです

@Html.Hidden("Refill.PatientId",Model.PatientId)

発生するHtmlマークアップは次のとおりです

<input id="PatientId" name="PatientId" type="hidden" value="">

ただし、ページの任意の場所で @Modal.PatientId を実行すると、値が取得されます

そのため、フォーム内に何かを配置すると、オーバーライドされます。回避策はありますか?

 @using (Html.BeginForm())
        {
//any custom input here gets overriden

}
4

1 に答える 1

0

あなたPartial Viewが投稿していないので、問題がどこにあるのかわかりにくいですが、いくつかの提案をします。で実際Modelの型を宣言したことを確認しRefillてください_RefillModal

@model Refill

次のステップは、このコード行で実際に値を渡していることを確認することです。

@Html.Partial("_RefillModal", new Refill()
                                 {
                                     /** Make sure that Model.Id actually 
                                         contains some value. */
                                     PatientId = Model.Id
                                 })
于 2013-02-03T06:14:07.223 に答える