내가 좋아하는 매핑 테이블이 있습니다linq2sql은 FK가있는 테이블을 어떻게 처리합니까?
Article_to_Categories을
은 articleID 내가 linq2sql을 사용하여이 테이블에 삽입 할 방법 카테고리 ID
?
내가 좋아하는 매핑 테이블이 있습니다linq2sql은 FK가있는 테이블을 어떻게 처리합니까?
Article_to_Categories을
은 articleID 내가 linq2sql을 사용하여이 테이블에 삽입 할 방법 카테고리 ID
?
제공된 Article 및 Category 테이블에 해당 행이있는 경우 표준 삽입과 다를 수 없습니다.
반면에 테이블이 비어 있으면 SubmitChanges를 실행하기 전에 해당 테이블에 행을 삽입해야합니다.
Linq-to-Sql이 우선 순위를 관리합니다.
전체적으로, Article_to_Categories 테이블에 행을 삽입하고 어떤 일이 발생하는지 간단히 확인하는 것이 좋습니다.
편집 : 경우 웹에서 예를 Linq에 - 투 - SQL에서 행을 삽입 고려하는 방법을 이해하지 않습니다
내 경험에 비추어 볼 때이 같은 연관 테이블에 레코드를 삽입하는 것과 비슷한 문제가있었습니다. 나에게 맞는 것은 외래 키 관계를 존중하고 외래 키 ID가 아닌 개체를 추가하는 것입니다. 내 연구를 기반으로 피겨 수 있기 때문에 내가 추가하는 경우로서 근처
var newRec = new Article_To_Categories
{
Article = DataContext.Articles.Where(a => a.Article_ID == 1).SingleOrDefault(),
Category = DataContext.Articles.Where(a => a.Category_ID == 2).SingleOrDefault()
};
DataContext.Article_To_Categories.InsertOnSubmit(newRec);
DataContext.SubmitChanges();
:
예를 들어, 나를 위해 작동하지 않았다 : 나를 위해 일한 무엇
var newRec = new Article_To_Categories
{
Article_ID = 1,
Category_ID = 2
};
DataContext.Article_To_Categories.InsertOnSubmit(newRec);
DataContext.SubmitChanges();
이 있었다 ID가 아닌 객체 인 경우 결과 Article_To_Categories 객체가 관련 레코드의 내용으로 올바르게 업데이트됩니다. 업데이트 프로세스의 일부는 관련 레코드를 다시 삽입해서는 안된다는 알림입니다. ID로 새 레코드를 업데이트하는 경우 LINQ-to-SQL이 Article 및 Category 테이블에서 레코드를 자동으로 검색하지 않는다고 생각합니다. 즉, 관련 레코드는 다음과 같은 기존 유효성 검사 대상이됩니다. 개체 또는 데이터베이스
안녕하세요, 저는 linq을 처음 사용했습니다. 내가 혼란스러워하는 너무 많은 nhibernate를 읽고 있었다! – mrblah