在ajax.actionlink中格式化datetime对象

时间:2014-12-05 20:50:27

标签: c# asp.net ajax asp.net-mvc

我有一个视图,其中有ajax.actionlinks,其中一些动作链接需要显示模型的日期属性,我有如下日期属性:

[Display(Name = "Date")]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:MM-dd-yyyy}", ApplyFormatInEditMode = true)]

public DateTime? Date { get; set; }

但是,因为ajax.actionlink接受第一个参数的字符串,所以我不能使用lambda表达式:

m => m.Date

而不是我正在使用

Model.Date.ToString()

但是这并没有显示我想要的格式。我试过了

Model.Date.ToString("MM-dd-yyyy");

但是我得到了红色下划线,因为它没有通过1个参数识别ToString重载...有关如何使其工作的任何想法?

1 个答案:

答案 0 :(得分:2)

由于Model.Date可以为空,因此您需要在使用Value版本之前访问DateTime?的{​​{1}}:

ToString