2011-04-07 144 views
0

我有一個存儲過程讀取表並將這些數據插入到另一個表。這就是它的工作方式,因爲第一個表格使用帶有SSIS的包從Excel中導入數據。存儲過程執行MVC3錯誤

在EF4中我導入了SP並創建了函數導入: 該SP有2個IN變量和2個OUT變量。

IN varibales是參數,O​​UT變量是一條消息和創建的記錄數。

我把生成的代碼:

#Region "Function Imports" 

''' <summary> 
''' No Metadata Documentation available. 
''' </summary> 
''' <param name="parIDPoliza">No Metadata Documentation available.</param> 
''' <param name="parFechaActual">No Metadata Documentation available.</param> 
''' <param name="varError">No Metadata Documentation available.</param> 
''' <param name="varKontador">No Metadata Documentation available.</param> 
Public Function spCargaArchivos(parIDPoliza As Nullable(Of Global.System.Int64), parFechaActual As Nullable(Of Global.System.DateTime), varError As ObjectParameter, varKontador As ObjectParameter) As Integer 
    Dim parIDPolizaParameter As ObjectParameter 
    If (parIDPoliza.HasValue) Then 
     parIDPolizaParameter = New ObjectParameter("parIDPoliza", parIDPoliza) 
    Else 
     parIDPolizaParameter = New ObjectParameter("parIDPoliza", GetType(Global.System.Int64)) 
    End If 

    Dim parFechaActualParameter As ObjectParameter 
    If (parFechaActual.HasValue) Then 
     parFechaActualParameter = New ObjectParameter("parFechaActual", parFechaActual) 
    Else 
     parFechaActualParameter = New ObjectParameter("parFechaActual", GetType(Global.System.DateTime)) 
    End If 

    Return MyBase.ExecuteFunction("spCargaArchivos", parIDPolizaParameter, parFechaActualParameter, varError, varKontador) 

End Function 

#End Region 

但是當我嘗試執行SP,我得到錯誤:
在參數數組中的索引2的參數爲null

執行

Dim varMensaje As Objects.ObjectParameter = Nothing 
Dim varError As Objects.ObjectParameter = Nothing 
Dim varRespuesta As Integer = varEntidades.spCargaArchivos(parIDPoliza, Now.Date, varError, varMensaje) 

任何sugg estion?

回答

0

最後我可以解決這個......經過兩天的艱苦。 我不知道它是否是一個錯誤,但錯誤是如何發送OUTPUT變量。

的類型是函數導入在模型瀏覽器性能

Dim varTotalRegistros As Objects.ObjectParameter = New Objects.ObjectParameter("varKontador", GetType(Global.System.Int64)) 
Dim varError As Objects.ObjectParameter = New Objects.ObjectParameter("varError", GetType(Global.System.String)) 
Dim varRespuesta As Integer = varEntidades.spCargaArchivos(parIDPoliza, Now.Date, varError, varTotalRegistros) 

好運氣一樣!