[英]C#, EF Core and Scaffold-DbContext, How to not passing null for a default valued column in the database?
我使用以下命令创建了我的域并且它工作正常
Scaffold-DbContext -Connection name=MyConnectionStringName -Provider Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Force -Project My.Domain -StartupProject My.Api
我正在从创建域的手动过程中迁移一些代码,原来没有定义数据库中默认的AuditApp列到连接字符串中的App=MyApi
。 这是数据库中定义的默认约束:
ALTER TABLE [dbo].[PriceGroups] ADD CONSTRAINT [DF_PriceGroups_AuditApp] DEFAULT (rtrim(isnull(app_name(),''))) FOR [AuditApp]
现在我在脚手架 output 中有了这个列,当我尝试添加 object 时出现此错误
Cannot insert the value NULL into column 'AuditApp'
有没有办法让我绕过它,让它不通过呢? 还是我将不得不进行手动域方法:/?
...
public string AuditApp { get; set; }
...
我会想要经常运行脚手架工具,所以需要一个不意味着我必须更改自动生成的代码的解决方案。
请快速满足您的要求并保证不会因此错误而破坏您的应用程序,在属性AuditApp
中,尝试添加一个默认值,如下所示:
...
public string AuditApp { get; set; } = string.Empty;
...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.