0

新しいアイテムを作成するフォームを作成したいのですが、いくつかのデータ、特に希望する日付を事前に入力DateTime.Nowし、ユーザーが変更するオプションを残さずに、最終的にこのデータをモデルにリンクするフォームを作成したいと考えています。

これまでのところ、私がやったことは次のとおりです。

@using (Html.BeginForm()) {
{
    var currentDate = DateTime.Now;
    Model.m_OrderDate = currentDate;
}   
@Html.ValidationSummary(true)
(...)
Order Date: @Html.DisplayFor(model => model.m_OrderDate)<br/>

<p>
    <input type="submit" value="Create" />
</p>
</fieldset>

しかし、アプリは実行時に次の行でクラッシュしModel.m_OrderDate = currenDateますObject reference is not set to an instance of an object.

私は多くの解決策を調べましたが、まだ解決していません。誰でも私を助けることができますか?どうもありがとう!

4

1 に答える 1

1

あなたのモデルでは:

private DateTime? orderDate = null;
public DateTime OrderDate
{
    get { return orderDate ?? DateTime.Now; }
    set { orderDate = value; }
}

唯一の他の部分は、初期化されたモデルを GET ビューに渡すことを確認することです。

public ActionResult MyAwesomeView()
{
    return View(new MyModel());
}

デフォルトは自動的に入力されます。

于 2013-03-04T16:51:35.823 に答える