0
사과 경우 :데이터베이스 우선 : 어떻게 모델해야합니까? 상위 참조 하위 참조 상위? 확실히 여기 이해하지 않지만, 내 피사체가 문제의
CREATE TABLE Employee
(
Id INT IDENTITY(1,1)
, Name VARCHAR(50) NOT NULL
);
CREATE TABLE Notes
(
Id INT IDENTITY(1,1)
,Employee_Id INT NOT NULL
, AddedByEmployee_Id INT NOT NULL
, Text VARCHAR(2000)
);
ALTER TABLE Notes
ADD CONSTRAINT pk_Notes
PRIMARY KEY (Id);
ALTER TABLE Notes
ADD CONSTRAINT fk_Notes01
FOREIGN KEY (Employee_Id)
REFERENCES Employee(Id)
ON DELETE CASCADE;
ALTER TABLE Notes
ADD CONSTRAINT fk_Notes02
FOREIGN KEY (AddedByEmployee_Id)
REFERENCES Employee(Id);
그래서, 직원이 하나 개 이상의 메모를 가질 수 있으며 각 노트가 추가됩니다 : SQL 서버에서
내가 가진 직원.
내가 내 Note.cls에두고 엔티티 프레임 워크이를 모델로 한이 내 Employee.cls
public int Id { get; set; }
public string Text { get; set; }
public virtual Employee Employee { get; set; }
public virtual Employee AddedByEmployee { get; set; }
그리고 있습니다 :
public int Id { get; set; }
public virtual List<Note> Notes { get; set; }
이 (내가 있으리라 믿고있어 단지 한 번 employee.cls에서 notes 콜렉션을 참조해야 함).
잘못된 열 이름 'Employee_Id1'I 모델을로드 할 때
현재, 내가 얻을.그리고 그것은 다음과 같은 SQL을 실행중인 :
SELECT
[Extent1].[Id] AS [Id],
[Extent1].[Text] AS [Text],
[Extent1].[Employee_Id] AS [Employee_Id],
[Extent1].[AddedByEmployee_Id] AS [AddedByEmployee_Id],
**[Extent1].[Employee_Id1] AS [Employee_Id1]**
FROM [Notes] AS [Extent1]
WHERE ([**Extent1].[Employee_Id1]** IS NOT NULL)
AND (**[Extent1].[Employee_Id1]** = 684)
는 그래서 Employee_Id1라는 열을 기대하고 있어요 그러나 나는 그것을 기대하고있다 모르겠어요. 나는 이것 후에 다른 문제점이있을 것이라고 생각한다. 누구든지 아이디어가 있다면, 나는 그들을 듣고 싶습니다.