我想設計一個基地樹節點類從其他實體類可以得到,我認爲這將是這樣的:樹節點設計首先
public abstract class BaseTreeNode
{
public string Id{get;set;}
public string Name{get;set;}
public string ParentId{get;set;}
[ForeignKey("ParentId")]
public BaseTreeNode ParentNode{get;set;}
}
public class MenuNode:BaseTreeNode
{
}
但是,它似乎並不嘗試使用MenuNode類構建某些層次結構時工作。當我調用SaveChanges方法時,它拋出一個SqlException:無效的對象名'dbo.BaseTreeNode'。
我認爲問題是關於屬性'ParentNode',因爲它是一個抽象類。 那麼,我應該如何在這種情況下首先使用實體框架4.1代碼來設計我的類。
非常感謝!
有人能幫助我嗎? – NicolasZ 2011-06-12 05:13:31
我不認爲問題是'ParentNode'屬性。該模型是有效的(除了'PrarentId',我猜只是一個錯字)。問題一定在其他地方。你可以顯示1)你的DbContext的DbSet屬性,2)任何Fluent映射,如果你有一個,3)拋出異常的代碼。 – Slauma 2011-06-12 17:57:10