2013-08-07 3 views
0

전에는 사용하지 않았으므로 데이터베이스에 inq를 통해 crud operaion을 수행해야합니다.여러 trasaction의 데이터베이스에서 linq를 통해 crud operaion을 수행하는 방법은 무엇입니까?

데이터베이스에 3 개의 다른 테이블을 넣을 컬렉션이 3 개 있습니다.

세 가지 컬렉션을 내가 어떻게 업데이트 알고 새로운 작업이 수행되는 추가 할 뭔가

을 보여주기 위해 인터페이스에 속한다. 같은 simele sqlcommand 같은 진술 업데이트 저장 프로 시저를 가진 단일 저장 메서드를 사용하고 새 항목을 추가 할 수 또는 새 항목을 추가 할 경우 첫 번째 테이블에 그것을 할당 할 기본 반환 할 수 있도록 편집 할 수 있는지 확인하십시오 다른 컬렉션 중 하나 proerty 및 밀어 같은 방식으로.

내 관심사는 새 항목을 데이터베이스에 푸시하면 기본 키가 반환되어 다른 컬렉션의 속성에 매핑 될 수 있다는 점입니다.

+0

linq (잘 "inq") 언급 - 여기에 ORM을 사용하고 있습니까? 그렇다면 어떤? 엔티티 프레임 워크? LINQ-to-SQL? 이 질문에 대한 답변은 –

+0

에 달려 있습니다. 내 파일 확장명은 .dbml입니다. 어디 쿼리 및 테이블을 얻으려면 같은 밀어 싶습니다. – NoviceToDotNet

+1

dbml은 LINQ-to-SQL입니다. –

답변

1

주석에서 LINQ-to-SQL을 사용하고 있습니다. 이 경우 ORM은 으로 처리합니다. 예를 들면 : 당신이 SubmitChanges를 호출 할 때

var cust = new Customer(); 
ctx.Customers.InsertOnSubmit(cust); 
cust.Orders.Add(new Order { Quantity = 1, Part = "abc" }); 
cust.Orders.Add(new Order { Quantity = 1, Part = "def" }); 
ctx.SubmitChanges(); 

는 ORM이 처리됩니다

  • 는 물건
  • 에 필요한 메타 데이터를 업데이트하는 필요한 삽입 및 업데이트
  • (정체성, rowversion 등)을 수행

그래서 - SubmitChanges에 대한 호출 후, 당신이해야의 즉, cust은 가지고있는 모든 신원을 선택했습니다. 특히 Order 등을 추가 할 때 ID가 아닌 개의 객체을 추가했습니다. 이는 우리가 아직 을 알고 있기 때문에을 알지 못하기 때문에 필요합니다. 또한 트랜잭션을 사용합니다.

관련 문제