EF 7基于AdventureWorks2019生成脚手架不完整问题求助
问题:使用EF Core从AdventureWorks2019生成模型时的异常与问题
我通过以下命令从AdventureWorks2019数据库生成EF Core上下文与模型类,连接字符串存储在appsettings.json中:
Scaffold-DbContext "Name=ConnectionStrings:connection" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models
构建成功并生成了模型类,但出现了一系列问题,具体如下:
一、类型映射缺失导致的生成失败
- 无法找到
HumanResources.Employee.OrganizationNode列(数据类型为hierarchyid)的类型映射,已跳过该列 - 因
OrganizationNode列无法生成,索引IX_Employee_OrganizationLevel_OrganizationNode无法生成脚手架 - 因
OrganizationNode列无法生成,索引IX_Employee_OrganizationNode无法生成脚手架 - 无法找到
Person.Address.SpatialLocation列(数据类型为geography)的类型映射,已跳过该列 - 无法找到
Production.Document.DocumentNode列(数据类型为hierarchyid)的类型映射,已跳过该列 - 因主键包含的
DocumentNode列无法生成,Production.Document表的主键脚手架无法生成,进而无法为该表生成实体类型 - 无法找到
Production.ProductDocument.DocumentNode列(数据类型为hierarchyid)的类型映射,已跳过该列 - 因主键包含的
DocumentNode列无法生成,Production.ProductDocument表的主键脚手架无法生成,进而无法为该表生成实体类型
二、Bool属性因默认约束被映射为可空类型
以下列原本应映射为非可空bool属性,但由于表中存在默认约束,被映射为可空bool属性,以此区分主动设置属性为false与使用默认约束的差异:
HumanResources.Employee.SalariedFlagHumanResources.Employee.CurrentFlagPerson.StateProvince.IsOnlyStateProvinceFlagProduction.Product.MakeFlagProduction.Product.FinishedGoodsFlagPurchasing.Vendor.PreferredVendorStatusPurchasing.Vendor.ActiveFlagSales.SalesOrderHeader.OnlineOrderFlag
内容的提问来源于stack exchange,提问作者Paul Kersey
相关产品推荐
相关产品推荐

