我正在使用 Visual Studio Entity Framework 电动工具从我的数据库中生成 poco 类。它一直有效,直到我向表中添加了一个自引用键。
CREATE TABLE [dbo].[Item](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](100) NOT NULL,
[parentItemId] [int] NULL,
...
ALTER TABLE [dbo].[Item] WITH CHECK ADD CONSTRAINT [FK_Item_Item] FOREIGN KEY([parentItemId])
现在我的项目类与以前相同(它不包含新的parentItemId字段):
public partial class Item
{
public Item()
{
}
public int Id { get; set; }
public string Name { get; set; }
}
而且似乎电动工具根本无法在 dbContext 类中生成任何代码。
使用这种数据库结构是否超出了 EF 范围?
如果是这样,那么最好的解决方案是什么?我能想到的唯一一个是添加另一个表ItemItem并创建多对多关系(这有点矫枉过正但是......)