我收到此错误:
类型' System.FormatException'的例外情况发生在mscorlib.dll中 但未在用户代码中处理
其他信息:字符串未被识别为有效的DateTime。
我的两个班级在这里显示:
public class GigFormViewModel
{
public string Venue { get; set; }
public string Date { get; set; }
public string Time { get; set; }
public byte Genre { get; set; }
public IEnumerable<Genre> Genres { get; set; }
public DateTime DateTime
{
get { return DateTime.Parse(string.Format("{0} {1}", Date, Time)); }
}
}
和
public class Gig
{
public int Id { get; set; }
[Required]
public ApplicationUser Artist { get; set; }
[Required]
public string ArtistId { get; set; }
public DateTime DateTime { get; set; }
[Required]
[StringLength(255)]
public string Venue { get; set; }
public Genre Genre { get; set; }
[Required]
public byte GenreId { get; set; }
}
答案 0 :(得分:4)
使用ParseExact
,假设您的字符string.Format("{0} {1}", Date, Time)
格式为DD/MM/YYYY hh:mm tt
,如01/11/2016 12:00 PM
,那么您可以通过
DateTime.ParseExact(string.Format("{0} {1}", Date, Time),
"DD/MM/YYYY hh:mm tt", CultureInfo.InvariantCulture);