私はという名前のSQL Serverの列をdate_updatedとしています。 MVCアプリケーションでは、/Controllers/Example.csで、私は次のようました:/Views/Example/Edit.cshtmlでDisplayFor、EditorFor、およびHiddenFor HTMLヘルパーのMVCコントローラクラスのDateTime
private DateTime _date;
public DateTime date_updated
{
get
{
return _date;
}
set
{
_date = DateTime.Now;
}
}
、私はDisplayFor、EditorFor、およびHiddenFor HTMLヘルパーをしました。
@Html.DisplayFor(model => model.date_updated)
@Html.EditorFor(model => model.date_updated)
@Html.HiddenFor(model => model.date_updated)
のは、今日の日付が2016年8月13日で、IDを持つレコードが= SQLで「1」=「2016年7月1日を」last_updatedですしているとしましょう。 DisplayForおよびEditorFor HTMLヘルパーは今日の日付(2011年8月13日)を表示し、HiddenFor HTMLヘルパーは日付をSQLで表示します(07/01/2016)。
- DisplayFor = 2016年8月13日
- EditorFor = 2016年8月13日
- HiddenFor = 2016年7月1日
私は非常にDisplayFor、EditorForたいと思いますし、 HiddenFor HTMLヘルパーは、すべての日付をSQLで表示します(07/01/2016)。 DisplayForおよびEditorFor HTMLヘルパーに、date_updatedをSQLから表示する方法がわかりません。
このような場合、なぜプロパティ設定ツール '_date = DateTime.Now;'にこれがありますか? – Rahul
私は_date = DateTime.Nowを配置しました。 setterプロパティの内部で、www.example.com/Example/Edit/1にナビゲートして[保存]をクリックすると、SQLのDateTimeが現在のDateTimeに更新されます。この目的に適したアプローチがいくつかありますか? – JeremyCanfield
あなたが主張するものは(関連コードを省略しない限り)不可能です。 'date_updated'の値は、その値を設定することができないので、' DateTime.Now'(または 'DateTime.MinValue')だけを返すことができます。そして、 'EditorFor()'と 'HiddenFor()'の間には何も表示されません(typeof 'DateTime'のカスタム' EditorTemplate'を持たない限り)。そして、コントローラのプロパティの値を変更しない限り'ModelState'の値が初期化された後、' DisplayFor() 'と同じになります –