2014-11-26 5 views
1

ASP.NET MVC에서 작업하고 있으며 Entity Framework를 사용하고 있습니다. DataBase에 의해 작성된 데이터베이스를 생성하는 동안 아래에 표시된 관계가 있습니다. 내 질문은 : 특정 환자의 역할을 어떻게 할당 할 수 있습니까?많은 테이블에서 작업하는 방법 EF

enter image description here

답변

1

이 약간 프로젝트가 어떻게 구성되어 있는지에 따라, 당신이 사용하는 어떤 디자인 패턴,하지만 아래의 코드는 올바른 방향을 가리켜 야합니다.

// query the DB for existing patient/role 
var dbContext = new MyDbContext() 
var patient = dbContext.Set<Patient>().FirstOrDefault(x => x.PatientID = patientId); 
var role = dbContext.Set<Role>().FirstOrDefault(x => x.RoleID = roleId); 

patient.Roles.Add(role); 
dbContext.SaveChanges(); 

편집

또는 환자의 새로운 인스턴스에 대해이 같은 ... 답변

var newPatient = new Patient { 
          Name = "NameHere" 
          .... 
          }; 

newPatient.Roles.Add(role); 
dbContext.Entry(newPatient).State = System.Data.EntityState.Added; 
dbContext.SaveChanges(); 
+0

들으 :) 내가 문제가 있지만 난 그냥 작업에 익숙해. 나는 등록 작업하고 환자 ("사용자") 역할을 추가하고 싶습니다하지만 그는 아직 기지에 존재하지 않는 경우 PatientID를받는 방법을 모른다. 당신은 어떤 생각이 있습니까 ?? Greatings – rejentt

+0

@rejentt 질문에 대한 답변을 업데이트했습니다. 도움이 되었으면 좋겠습니다. –

관련 문제