【发布时间】:2018-08-27 03:52:09
【问题描述】:
我在 EF6 Code First 项目中使用 EntityFramework.Plus 的审计功能。当我添加以下代码时:
public virtual DbSet<AuditEntry> AuditEntries { get; set; }
public virtual DbSet<AuditEntryProperty> AuditEntryProperties { get; set; }
static EntityContext()
{
AuditManager.DefaultConfiguration.AutoSavePreAction = (context, audit) =>
{
var Entities = context as EntityContext;
if (Entities != null)
{
Entities.AuditEntries.AddRange(audit.Entries);
}
else throw new InvalidOperationException($"Context is null for {context.Database.Connection}");
};
}
我收到以下错误:
在模型过程中检测到一个或多个验证错误 生成:\r\n\r\nWebsite.Core.Entities.Audit: : EntityType 'Audit' 没有定义键。定义此 EntityType 的键。\r\n审核: EntityType:EntitySet 'Audits' 基于类型 'Audit',没有 已定义键。\r\n", "exceptionType": "System.Data.Entity.ModelConfiguration.ModelValidationException"
审计不是我项目中的实体 - 如错误所述。当我删除上面的代码时,这个错误就被删除了。
有人可以帮忙吗?是否可以禁止外部库类型的模型验证?
提前致谢
HS
【问题讨论】:
标签: c# entity-framework entity-framework-6 entity-framework-plus