我遇到了Dapper FluentMap(1.60版)的问题,我不知道如何解决。如果.NET类中的相应属性具有“日期”名称,则Dapper似乎无法映射表中的列。
我在DB中有该表(如果有问题,我正在使用MS SQL),其列类型为Dt
的列Date
。
有一个具有DateTime属性的实体:
public class MyEntity {
public DateTime Date { get; set; }
}
及其对应的映射:
public class MyEntityMapper : EntityMap<MyEntity> {
public MyEntityMapper() {
Map(p => p.Date).ToColumn("Dt");
}
}
当我尝试从数据库获取数据并映射到MyEntity
时,出现以下错误:
ArgumentNullException:值不能为null。参数名称:meth
如果我将Date
中的MyEntity
属性重命名为Dt
或JustDate
之类的其他东西-一切正常。 Dapper Fluent Map中是否有这样的限制(不允许给与数据库中数据类型名称相同的属性命名)?
如果是这样,是否有可能以某种方式克服它?因为在我的情况下,在MyEntity
答案 0 :(得分:1)
是的,唯一的解决方案是将实体属性Date更改为其他名称。