ブートストラップのdatepickerを使用して私のモデルのプロパティをバインドする際に問題があります。ブートストラップ日付ピッカー。問題のバインド:値が無効です
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
public DateTime FechaDesignado { get; set; }
この:
値DATEがDateFieldの
これは、プロパティは私のモデルで定義されている方法であるため、有効ではありません:私は次のエラーを取得していますビューがどのように構築されるかです:
<div class="form-group">
<div>
<input type="datetime" class="datepicker form-control" asp-for="@item.FechaDesignado"/>
<span asp-validation-for="@item.FechaDesignado" class="text-danger"></span>
</div>
</div>
これは、それが私のDBにどのように見えるかです
<div class="form-group" form="form1">
<div>
<input type="datetime" class="datepicker form-control" data-val="true" data-val-required="The FechaDesignado field is required." name="item.FechaDesignado" value="09/01/1901" />
<span class="text-danger field-validation-valid" data-valmsg-for="item.FechaDesignado" data-valmsg-replace="true"></span>
</div>
</div>
:に変換
。
これは、日付ピッカーのコードです:コントローラ内部
<script type="text/javascript">
$(function() {
$('.datepicker').datepicker({
"autoclose": true
});
});
</script>
ポスト処置:
[HttpPost, ActionName("Management")]
//[ValidateAntiForgeryToken]
public async Task<IActionResult> Management(int? id)
{
var storetoupdate = _context.Stores.SingleOrDefault(m => m.StoreID == id.Value);
if (await TryUpdateModelAsync(
storetoupdate, "item",
s => s.StoreName, s => s.IncomePeriodicity, s=>s.Usuario, s => s.FechaDesignado))
{
await _context.SaveChangesAsync();
return RedirectToAction("Management");
}
return RedirectToAction("Management");
}
が質問:私が日付入力フィールドを変換する必要がありますようには思えますDateTime.ParseExact
を使用してdatetimeオブジェクトが、私はどのようにコントローラを編集するのかわからない彼の申し訳ありませんが、私はこれをすべて学んでいます。
ありがとうございました。
理想的には、手動でビューモデルに日付値をバインドする必要はありません。投稿日の値はStore View ModelのFechaDesignadoプロパティに正しくバインドされていませんか? – Win
@Win yeap、StoreモデルのFechaDesignadoプロパティは、送信された値が有効ではないと言って、モデルにバインドされていません –