내가 나는 그것이 같은 것이라고 생각, 다른 엔티티 클래스가 파생 할 수있는 기본 트리 노드 클래스를 설계 할 : 그러나트리 노드 디자인 우선
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 클래스로 일부 계층 구조를 만들려고 할 때 작동합니다. 그것은 SqlException 던졌습니다 : 잘못된 개체 이름 'dbo.BaseTreeNode'SaveChanges 메서드를 호출하면.
나는 그것이 추상적 클래스이므로 'ParentNode'속성에 관한 문제라고 생각했다. 이 경우 엔터티 프레임 워크 4.1 코드를 사용하여 클래스를 어떻게 디자인해야합니까?
감사합니다.
누군가 나를 도울 수 있습니까? – NicolasZ
문제가 'ParentNode' 속성이라고 생각하지 않습니다. 이 모델은 유효합니다. ('PrarentId'는 예외 일뿐입니다.) 문제는 다른 곳에서 발생해야합니다. 1) DbSet 속성과 함께 DbContext, 2) Fluent 매핑이 있으면이를 매핑 할 수 있으며, 3) 예외를 throw하는 코드를 표시 할 수 있습니까? – Slauma