LinqToEntities를 사용하려고하는데 데이터 모델에 외래 키 필드가 없다는 사실을 발견했습니다. 그게 레코드를 추가하려고 할 때 약간의 문제를 일으키는 것 같습니다.LinqToEntities 및 외래 키
주위를 읽을 때 레코드를 추가 할 때 다음과 같은 작업을 수행 할 수 있음을 알았습니다 (제품에 Categories 테이블에 외래 키가 있음).
Product myProduct = new Product();
myProduct.ProductName = ProductName;
myProduct.Categories = db.CategorySet.Where(c => c.CategoryID == CategoryID).First();
db.AddToProductSet(myProduct);
db.SaveChanges();
이렇게하는 것이 더 좋은 방법 일 것입니다. 하지만 내 질문은 정말 LinqToEntities에서 어떻게 작동합니까? 이것이 단순히 외래 키 (예 : myProduct.CategoryID = categoryid)를 제공하는 것보다 훨씬 복잡하다고 생각됩니다.
테이블에 5 개의 외래 키가있는 경우이를 연결하기 위해 5 개의 개체를 검색해야합니다.
위의 내용을 이해하고 이점을 얻을 수 있지만 다른 테이블에 단일 외래 키가있는 데이터베이스에 1 개의 레코드를 추가하려는 경우 이점이 보이지 않습니다.