【发布时间】:2014-09-09 20:27:40
【问题描述】:
我正在从 v1-3 升级到 v4,但遇到了一些问题。
我的理解是不支持 DateTime,我必须始终使用 DateTimeOffset。很好。
但在我将 Sql date 数据类型存储在 DateTime 之前,现在似乎我收到了这个错误:
Member Mapping specified is not valid. The type 'Edm.DateTimeOffset[Nullable=False,DefaultValue=,Precision=]' of member 'CreatedDate' in type 'MyEntity' is not compatible with 'SqlServer.date[Nullable=False,DefaultValue=,Precision=0]'
解决这个问题的方法是什么?我需要能够在数据库中专门存储日期(时间和地点并不重要)。如果我能得到 Edm.Date 以及返回的数据类型,那就太好了,但我以前没有。
谢谢。
编辑:示例类
之前:
public class Ticket
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[Required, MaxLength(50)]
public string Reference { get; set; }
[Column(TypeName = "date")]
public DateTime LoggedDate { get; set; }
}
之后:
public class Ticket
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[Required, MaxLength(50)]
public string Reference { get; set; }
[Column(TypeName = "date")]
public DateTimeOffset LoggedDate { get; set; }
}
这在 EF 中无效。
【问题讨论】:
标签: entity-framework asp.net-web-api odata asp.net-web-api2