これは日付と時刻に関する壮大な物語です。
Created は null 非許容の DateTimeOffset 変数です Updated は null 許容の DateTimeOffset 変数です
両方の値が適切に作成され、DB に存在し、ビューに渡されました。したがって、これらの値は両方とも次の場所で使用できる必要があります。<div class="row">@Html.Label(Model.Created.Value.ToString("MMMM, dd yyyy hh:mm tt"))</div>
<div class="row">@Html.Label(Model.Updated.Value.ToString("MMMM, dd yyyy hh:mm tt"))</div>
ただし、2 番目 (更新済み) は問題なく、最初 (作成済み) はエラーを引き出します。
.value 部分で発生します。なぜ一方は大丈夫で、もう一方は大丈夫ではないのですか?変数のnull可能性は、それが受け入れられることとどのような関係がありますか? または、メソッドを「指定されたコンテキストでは無効」にしますか?
私のモデル:
public BlogPost()
{
this.Comments = new HashSet<Comment>();
}
public int Id { get; set; }
public DateTimeOffset Created { get; set; }
public DateTimeOffset? Updated { get; set; }
[Required()]
public string Title { get; set; }
public string Slug { get; set; }
[Required()]
[AllowHtml]
public string Body { get; set; }
public string MediaURL { get; set; }
public bool Published { get; set; }
public virtual ICollection<Comment> Comments { get; set; }