1

我仍然面临 datetimeoffset 值的问题。

我有以下两个日期,FromDate 没有问题。使用 ThruDate,当我更新和保存时,我得到 ThruDate 不是有效日期。提出了一个问题,ModelState 对 DateTimeOffset + MVC4 无效,但没有得到任何答案。

[Required, Display(Name = "From")]
    [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:ddd, dd MMM yyyy HH:mm:ss GMT}")]
    public System.DateTimeOffset FromDate { get; set; }

    [Display(Name = "Thru")]
    [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:ddd MMM dd yyyy hh:mm:ss 'GMT'zzz '(India Standard Time)'}")]
    public Nullable<System.DateTimeOffset> ThruDate { get; set; }

但是,我在模型活页夹中使用的 ThruDate 格式工作正常:

 if (value.IndexOf("UTC") != -1)
            thru = DateTimeOffset.ParseExact(value, "ddd MMM dd HH:mm:ss \"UTC\"zzz yyyy", CultureInfo.InvariantCulture);
        else
            thru = DateTimeOffset.ParseExact(value, "ddd MMM dd yyyy HH:mm:ss \"GMT\"zzz \"(India Standard Time)\"", CultureInfo.InvariantCulture);

但这在模型 DataFormatString 中不起作用,所以我的模型状态无效。有人可以建议这里有什么问题吗?

4

0 回答 0