1
最後一行RETURN(X)是這樣的:實體框架5 - 從我的存儲過程的存儲過程
RETURN (22);
我打電話我的存儲過程如下:
var result = new ObjectParameter("result", typeof(double));
int success = context.MySP(code, Id, result);
的存儲過程從我的代碼調用時工作正常。
code
是一個字符串,Id
是一個Guid和result
是一個OUTPUT
參數並且工作正常。
所以我知道RETURN (22);
聲明已經達到(運行在查詢分析器也證實了這一點,當我在那裏運行它時,返回值是22)。
我期待(在這個例子中),success
將包含22,但它總是包含-1。
什麼是22
返回值變爲success
變量的最直接的方法?
感謝 羅布
所以你說它實際上不可能得到RETURN(X)值?當然,我可以使「成功」的另一個OUTPUT值,但我想我可以只使用RETURN值。 –
這是可能的,但你需要在你的存儲過程中明確地設置輸出變量'@ result'的值,並返回它。然後在您的客戶端代碼中,您的ObjectParameter的Value屬性將成爲過程的結果。 – Khan
感謝您的回覆。我看到我需要在SP中爲「success」和RETURN(@Success)創建另一個OUTPUT參數。唯一的問題是,RETURN(22)可能不會把22放在我的「成功」變量中?我希望得到實際的RETURN值,不管它是如何返回的。 –