2012-04-05 2 views
0

라이브러리 루틴에서 SQL "이전 스타일"을 실행하기 위해 DbContext에서 기본 데이터베이스 및 연결 개체에 액세스하려고합니다. 이 라이브러리 루틴은 여러 위치에서 호출 될 수 있으므로 DbContext를 사용합니다. 이 여기 Entity Framework 4.3.1 DBContext 연결

using (testentities te = new testentities()) 
{ 
    var result = CallGeneric(te, some parameters); 
} 

public static Results CallGeneric(DbContext db, some parameters); 
{ 
    var connection = (SqlConnection)db.Database.Connection; 

    // do some stuff here 

} 

는 EF 4.1에서이 일 관련 코드의 개요입니다 ... 4.3.1 내가 오류를 받고 있어요으로, 그러나 4.1에서 일을 내가 직접 연결을 사용할 수 있었다 . NuGet을 사용하여 EF 4.3.1로 업데이트했으며 더 이상 작동하지 않습니다. 기본 연결을 얻는 방법에 대한 아이디어가 있습니까?

+0

당신이 "길지 않은 작품"부분에 좀 더 정교한 EF 다시 설치 한 후 EF 4.1을 제거하고 있었다? 방금 당신이하는 방식대로 연결을 시도했는데 그것은 나를 위해 일했습니다. 내가 가지고있는 연결이 닫혀서 "열어야 할 물건"을 열어야한다는 것에주의하십시오. 또한 DbContext.Database 클래스에는 SqlQuery 및 ExecuteSqlCommand 메서드가있어 유용 할 수 있습니다. – Pawel

+0

문제는 "DLL Hell"의 저의 작은 버전이었습니다. EF 4.1 *을 제거하고 EF 4.3.1을 설치해야했습니다. 완료되면 모든 것이 예상대로 작동했습니다. –

답변

0

솔루션 4.3.1

관련 문제