我有一个web api控制器方法,它接受一个复合对象,其中一个属性是DateTime。客户希望我们以yyyyMMdd格式公开日期。我在用 以下属性
[JsonConverter(typeof(CustomDateConverter))]
public DateTime TransactionDate { get; set; }
public class CustomDateConverter : IsoDateTimeConverter
{
public CustomDateConverter()
{
DateTimeFormat = "yyyyMMdd";
}
}
还有另一个属性,客户端是否只发送时间,即hhmmss格式 当我在提琴手中发送日期来测试这个方法时,我在模型中得到日期值为01/01/0001 00:00:000
答案 0 :(得分:0)
您的代码适用于控制台应用程序,请参阅fiddle
对于Web API,您可能希望在global.asax
中注册CustomDateConverter
格式化程序
JsonSerializerSettings serializerSettings = new JsonSerializerSettings();
serializerSettings.Converters.Add(new CustomDateConverter());
GlobalConfiguration.Configuration.Formatters[0] = new JsonNetFormatter(serializerSettings);