我正在使用模型优先方法使用 EF5。我设计了模型并执行了生成相应数据库的 SQL 脚本(使用“从模型生成数据库”)。
然后我不得不使用 UDF 来计算几个列值(这需要删除和重新添加列)。我在 SSMS 中完成了该操作,然后使用“从数据库更新模型...”来反映模型中的更改。
到目前为止,一切都很好。
但是从这一点开始,每次我从模型更新数据库时(如上所述),计算的列都会被“标准”列覆盖。
例如,以下是 EF 生成的 SQL 脚本的摘录:
-- Creating table 'ShipmentSet'
CREATE TABLE [dbo].[ShipmentSet] (
[Id] int IDENTITY(1,1) NOT NULL,
[Details] nvarchar(128) NOT NULL,
[BarcodeValue] nvarchar(32) NOT NULL,
[ExecutionDate] datetime NOT NULL,
[RouteId] int NOT NULL,
[IsLocationBarcodeRequired] bit NOT NULL,
[IsPending] bit NULL,
[LastAction] tinyint NULL
);
GO
最后两列是计算列,它们StoreGeneratedPattern
在模型中定义为Computed
.
有没有办法在模型中添加计算列公式?SQL 脚本删除表然后重新创建它们,因此“忽略”这些列是行不通的。