viewModel.Note
がインスタンスへの参照である場合NoteViewModel
、次を使用できます。
public class NoteViewModel{
private DateTime? m_Modified;
private string m_ModifiedBy;
// note that you do not need the DisplayNameAttribute, because the default
// display name is the property name
public DateTime Modified {
get { return m_Modified ?? DateTime.Now; }
}
[DisplayName("Modified By")]
public string ModifiedBy {
get { return m_ModifiedBy ?? string.Empty; }
set {
if(value!=null) {
m_ModifiedBy = value;
m_Modified = DateTime.Now;
}
}
}
}
次に、「コード」(コントローラーを意味していると思いますか?)で、次のことができます。
viewModel.Note.ModifiedBy = User.Identity.Name;
意図した結果が得られます。
補足:DateTime.UtcNow
アプリケーションの対象者によっては、ローカライズ目的での 使用を検討する必要がある場合があります。DateTime.Now
サーバーの場所に依存する、サーバー上の現在の DateTime を返します。このデータをユーザーに表示する場合は、(a) タイム ゾーンを指定するか、(b) クライアント マシンのタイム ゾーンに合わせて時刻をローカライズする必要があります。