2012-05-22 3 views
1

나중에 참조 할 수 있도록 사용자에게 표시 할 수 있도록 방금 저장 한 개체의 ID를 가져 오려고합니다. ID를 직접 생성하지 않으면 데이터베이스가 자동으로 ID를 생성하기 때문에이를 수행하는 가장 좋은 방법은 무엇입니까? 저장 후 개체 ID 검색 LinqToSQL

I 데이터베이스에 저장하는 저장소 (repository)에 다음과 같은 방법을 가지고 후 나는 즉시 저장 고라의 ID를 검색하려는 :

public void SaveNewSomeObject(SomeObject someObject) 
    { 
     db.SomeObjects.InsertOnSubmit(someObject); 
     db.SubmitChanges(); 
    } 

답변

1

당신이 있던 개체의 ID를 검색이 시도 할 수 바로 제출 변경 후 삽입

db.SomeObjects.InsertOnSubmit(someObject); 
    db.SubmitChanges() 
    MessageBox.Show(someObject.SomeID) 

또는 다른 선택은있을 수

var lastid = db.SomeObjects.OrderByDescending(x => x.SomeID).FirstOrDefault(); 
int id=lastid.SomeID; 
+0

어떻게 하시다 uld이 두 사람이 정확히 같은 시간에 레코드를 제출 처리 ... 나는 일반적으로 문제가되지 말았어야 의미하지만, 오류에 대한 기회를 도입이 아닌가요? 그리고 가끔씩 만 볼 수있는 잠재적 인 숨겨진 버그가 있습니다. – Mark