반환 SQL Server에서 데이터를 쿼리하기 위해 쿼리 열기를 사용하여 간단한 SELECT 문 (SET NOCOUNT OFF로 설정)을 실행하는 저장 프로 시저를 만들었습니다 연결된 서버에서. SQL 서버에서 데이터를 조회하는 경우, 정확한 결과는 다시하게된다 예 :Entity Framework v4 - 연결된 저장 프로 시저 Select 문 - 연결된 쿼리 (Open Query) -1
SELECT * FROM OPENQUERY(SERVER, ''SELECT * FROM db.table WHERE field = ' + '''' + '''' + @var+ '''' + ''''')'
지금은 데이터에 액세스 할 엔티티 프레임 워크의 V4를 사용하는 C#의 윈폼 응용 프로그램을 가지고 있고, 코드에서이 저장 프로 시저에 액세스하려면 .
나는 '데이터베이스에서 업데이트 모델'을 수행하고 저장 프로 시저를 추가 한 다음 함수 가져 오기 (예 : getData)를 추가하기로 결정했습니다. 내가 확인을 클릭이 시점에서
'The selected stored procedure returns no columns'
다음 (다음과 같이) SP에 액세스 할 수있는 몇 가지 간단한 코드를 썼습니다 : 다음 '열 정보 가져 오기'를 클릭 한 후 발견, 나는 다음과 같은 메시지를받은
using(var context = new MyContext())
{
var result = context.getData('paramdata');
}
을
코드를 단계별로 실행할 때 결과는 '-1'로 설정됩니다. 일부 읽기를 한 후에 누군가가 NOCOUNT를 OFF로 설정하도록 제안했지만 저장 프로 시저에서 아무런 차이가 없었습니다.
SQL Server에서는 쿼리가 작동하지만 Entity Framework에서는 작동하지 않는 이유가 확실하지 않습니다.
이 방법을 사용할 수 있습니까? 사전에
감사합니다.
이것은 훌륭하게 작동합니다!, 나는 테이블 변수를 생성하고 그것을 선택했습니다. 그런 다음 모든 데이터에 액세스하기 위해 복잡한 유형 함수 가져 오기를 만들었습니다. – user1097734
코드 예제를 제공 할 수 있습니까? – TStu
@Stu 위의 편집 참조 – podiluska