我正在尝试在几个实现接口的实体上重用一些模型配置。
检查此代码:
public static void ConfigureAsAuditable<T>(this EntityTypeConfiguration<T> thisRef)
where T : class, IAuditable
{
thisRef.Property(x => x.CreatedOn)
.HasColumnName("utctimestamp")
.IsRequired();
thisRef.Property(x => x.LastUpdate)
.HasColumnName("utclastchanged")
.IsRequired();
} // ConfigureAsAuditable
如您所见,我正在尝试在我的 onmodelcreating 方法上调用扩展方法“ConfigureAsAuditable”,如下所示:
EntityTypeConfiguration<Account> conf = null;
conf = modelBuilder.Entity<Account>();
conf.ToTable("dbo.taccount");
conf.ConfigureAsAuditable();
调试时我得到这个异常:
属性“CreatedOn”不是“帐户”类型的声明属性。使用 Ignore 方法或 NotMappedAttribute 数据注释验证该属性是否已从模型中显式排除。确保它是有效的原始属性。
在此先感谢 :) PD:我正在使用 EF 5-rc、VS 2011 和 .NET Framework 4.5