2014-07-16 5 views
1

를 저장 실행하지 내가 다음 코드 조각이 : 나는 전화를 걸 때Entityframework 절차

using (var context = new MyContext()) 
     { 
      context.Database.CommandTimeout = 5000; 

      context.Database.ExecuteSqlCommand("EXEC [DBO].[SP_IMPORT_MYDATA]"); 

      context.SaveChanges(); 
     } 

, 프로세스가 실행중인 것처럼 보이지만 아무것도 데이터베이스에 업데이트되지 중입니다. SQL Server Management Studio에서 직접 저장 프로 시저를 호출하면 바로 실행되고 데이터가로드됩니다. 누구나 무슨 일이 생길까요? 명확성을 위해

이는 같은 SP는 SQL 서버에서 호출되고 있으며, 그것을 잘 작동합니다 :

USE [MyDB] 
GO 

DECLARE @return_value int 

EXEC @return_value = [dbo].[SP_IMPORT_MYDATA] 

SELECT 'Return Value' = @return_value 

GO 
+0

무엇 저장 프로 시저 내부의 SQL? – Colin

답변

-1

왜 그냥 기능을 가져올 수 없습니다 컨텍스트에서 직접 호출? 그것은 잘 실행되어야합니다.

데이터베이스에서 모델을 업데이트하고 원하는 저장 프로 시저를 포함하십시오. 는 다음 SP를 찾기 위해 모델의 브라우저를 사용 할

을 "기능 가져 오기 추가", 당신은 다만 할 수 있습니다

context.SP_IMPORT_MYDATA(); 

상세 정보 : http://msdn.microsoft.com/en-us/library/vstudio/bb896231(v=vs.100).aspx

+0

DB와 SP의 EF 코드를 먼저 만들므로 내 맥락에서 SP에 액세스 할 수 없습니다. – Adrian