2016-09-09 5 views
0

나는 다음과 같은 열이 포함 된 테이블 RhSeq이 편집 - 여기에 전체 저장 프로 시저가 있습니다가져 오기 저장 프로 시저 값

CREATE PROCEDURE [dbo].[usp_RhSeqNextVal] 
@table VARCHAR (20), @colonne VARCHAR (30), @sequence_id INT OUTPUT 
AS 
SET NOCOUNT ON 
SET @sequence_id = -1 

DECLARE @transaction AS BIT 
    SET @transaction = 0; 

IF 0 = @@TRANCOUNT 
BEGIN 
    BEGIN TRAN 
    SET @transaction = 1; 
END 

UPDATE dbo.RhSeq 
    SET ScoSequence = CASE WHEN Right(@colonne,1) = '-' THEN 
      ScoSequence - 1 
     ELSE 
      ScoSequence + 1 
     END 
WHERE ScoTable = @table 
    AND ScoColonne = @colonne 

SELECT @sequence_id = ScoSequence 
    FROM dbo.RhSeq 
WHERE ScoTable = @table 
    AND ScoColonne = @colonne 

IF 1 = @transaction 
BEGIN 
    COMMIT TRAN 
END 

인 Studio Explorer에서 저장 프로 시저를 마우스 오른쪽 버튼으로 클릭하고 Execute를 선택하면 ScoTableScoColonne의 값을 입력하고 sequence_id을 null로 설정하면 정상적으로 실행되어 새로운 증가 된 sequence_id 값을 반환합니다. 그래서 저장 프로 시저에 아무런 문제가 없습니다.

내가 가지고있는 문제는 내 코드 내에서 sequence_id을 반환하려고 할 때입니다.

SqlParameter param1 = new SqlParameter("@ScoTable", "MyTable"); 
SqlParameter param2 = new SqlParameter("@ScoColonne", "MyColumn"); 
SqlParameter param3 = new SqlParameter("@sequence_id", DBNull.Value); 

var numeroSequence = db.Database.SqlQuery<RhSeq>("usp_RhSeqNextVal @ScoTable,@ScoColonne, @sequence_id", param1, param2,param3).ToList(); 

는 I 오류를 얻을

System.Data.Entity.Core.EntityCommandExecutionException : 타입의 부재 'ScoTable'와 같은 데이터 판독에 대응하는 항목이없는 저장 프로 시저가 int 인 만 sequence_id를 반환하기 때문에 나의 이해에서

이름, 오류, RhSeq에서 온다, 그것은 RhSeq를 만들 수 없습니다 그것을 가진 대상. 결과를 int으로 캐스팅하려고 시도하지만 여전히 작동하지 않습니다.

어떻게 저장 프로 시저에서 반환 된 sequence_id을 내 var numeroSequence에 저장할 수 있습니까?

+1

하세요 저장 프로 시저 전체 정의를 적어도 입력 매개 변수 정의 및 최종 출력에 게시하십시오. – techspider

+1

저장 프로 시저가 아무것도 반환하지 않거나 완전한 코드를 게시하지 않았습니다. – Marusyk

+0

전체 SP –

답변

0

LinqToSQL에서도 비슷한 문제가있었습니다.

SELECT @sequence_id = ScoSequence 
FROM dbo.RhSeq 
WHERE ScoTable = @table 
AND ScoColonne = @colonne 

추가 : 후 당신의 SP에

:

SELECT @sequence_id 

그리고 물론 : 그것을 설정 한 후 절차의 작업 않았다 @sequence_id 선택

db.Database.SqlQuery<int>... 
관련 문제