我在MS SQL db 2008上創建了一個存儲過程(SP)。SP使用臨時表和遊標。我試圖訪問SP的結果集,但是在代碼中(vb.net與實體框架)它顯示函數作爲int的數據類型,但是這應該是列表的數據類型(結果的(SP))任何想法什麼導致數據類型顯示爲int而不是列表。SQL存儲過程實體框架VB.Net
我已經更新了我的db模型,沒有運氣。
感謝您的幫助!
我在MS SQL db 2008上創建了一個存儲過程(SP)。SP使用臨時表和遊標。我試圖訪問SP的結果集,但是在代碼中(vb.net與實體框架)它顯示函數作爲int的數據類型,但是這應該是列表的數據類型(結果的(SP))任何想法什麼導致數據類型顯示爲int而不是列表。SQL存儲過程實體框架VB.Net
我已經更新了我的db模型,沒有運氣。
感謝您的幫助!
選項1
清除所有引用到實體框架中的存儲過程。
註釋了大部分sprocs的身體。只需保留參數和最終選擇(只要類型正確,您可以僞造)
添加sprocs到EF希望它添加好。現在重新創建原始sprocs,但不要在EF中更新它。
選項2
使用代碼第一。但是,這可能是太棘手
選項3
添加到您的存儲過程
SET FMTONLY OFF
刪除的存儲過程的任何現有的引用,然後重新添加
這是比較容易,特別是如果你不斷更改存儲介質。
嗨史蒂夫,今天再次遇到這個問題,這次我不得不使用選項1,對於Entitiy Framework的sproc只是太多了,所以只用輸出重新創建了sproc,更新了EF,然後把代碼放回了sproc – Mike
嘿邁克!你能分享它的方式嗎? –
Steve,我已經檢查並更新了我的答案。這有幫助嗎? – Mike