C# 如何在实体框架中设置数值舍入中止
我正在增强应用程序,并在我们的应用程序[Microsoft.AspNetCore.Identity.EntityFrameworkCore]中使用Microsoft.NET Core Identity for IAM。 数据库是Microsoft SQL Server。数据库设置几乎是标准的,除了“NUMERIC_ROUNDABORT”将被打开 但是当我们启动应用程序时,我们得到了以下异常 System.Data.SqlClient.SqlException:C# 如何在实体框架中设置数值舍入中止,c#,asp.net-core,.net-core,entity-framework-core,C#,Asp.net Core,.net Core,Entity Framework Core,我正在增强应用程序,并在我们的应用程序[Microsoft.AspNetCore.Identity.EntityFrameworkCore]中使用Microsoft.NET Core Identity for IAM。 数据库是Microsoft SQL Server。数据库设置几乎是标准的,除了“NUMERIC_ROUNDABORT”将被打开 但是当我们启动应用程序时,我们得到了以下异常 System.Data.SqlClient.SqlException: '创建索引失败,因为以下集合选项的
'创建索引失败,因为以下集合选项的设置不正确:'数值\u ROUNDABORT'。
验证集合选项是否正确用于索引视图和/或计算列上的索引和/或筛选索引和/或查询通知和/或XML数据类型 工作场景: 场景1:在服务器级别关闭“NUMERIC_ROUNDABORT”时,应用程序工作正常,没有问题 场景2:当我从数据库中提取表创建查询并在启用“NUMERIC_ROUNDABORT”的情况下执行它们时,仍然一切正常 场景3:在服务器级别关闭“NUMERIC_ROUNDABORT”并首次启动应用程序(让ef core创建的所有表都打开)后,下一次应用程序工作时,因为已经创建了必要的表和索引 非工作场景: 当“NUMERIC_ROUNDABORT”在服务器级别打开时,当我们第一次运行应用程序时,它会抛出一个异常 我理解在表达式中发生精度损失后,以及在计算列或索引视图上创建或更改索引时,预期会出现异常的原因 你能帮我一下吗?我们能用程序解决这个问题吗。可能吗 注:在数据库中更改是不可能的[在我的情况下]
谢谢大家的建议和帮助。所以我们在这里讨论身份的初始迁移?如果是的话,
dotnet ef migrations script
显示了什么?它与场景2相比如何?