Open fanxinshun opened 1 month ago
有一千多张表,所有表都有触发器,则可以使用以下模型生成约定,选择不再对所有模型表使用较新的高效技术:
public class BlankTriggerAddingConvention : IModelFinalizingConvention
{
public virtual void ProcessModelFinalizing(
IConventionModelBuilder modelBuilder,
IConventionContext
foreach (var fragment in entityType.GetMappingFragments(StoreObjectType.Table))
{
if (entityType.GetDeclaredTriggers().All(t => t.GetDatabaseName(fragment.StoreObject) == null))
{
entityType.Builder.HasTrigger(fragment.StoreObject.Name + "_Trigger");
}
}
}
}
}这种解决办法比较适合,不知能能否采用
导致该错误的官方说明及解决方法都有说明文档:https://learn.microsoft.com/zh-cn/ef/core/what-is-new/ef-core-7.0/breaking-changes?tabs=v7#sqlserver-tables-with-triggers 在我的sql server数据库中,每张表都有触发器,InsertAsync和UpdateAsync方法能否支持不返回int,并且在生成的sql中去除OUTPUT 或者有其它什么解决方案