2016-03-08 60 views
0

我正在使用實體框架6使用存儲過程從Oracle數據庫提取記錄,該存儲過程採用集合類型的輸出參數。該存儲的過程在集合類型的out參數中返回select查詢的結果。例如首先使用Entity Framework 6代碼調用Oracle中的存儲過程

procedure GetEmployees(recordset OUT employeesList) 
{ 
    employeesList = select * from employee 
} 

如何調用存儲過程並獲取結果?或者有什麼首選的解決方案?

回答

2
using(var context = new DatabaseContext()) 
{ 
     var param1 = new SqlParameter("@Param1", 1); 
     var param2 = new SqlParameter("@Param2", 2); 

     var result = context.Database 
      .SqlQuery<Employee>("SP_NAME @Param1 @Param2", param1,param2) 
      .ToList(); 
} 

如果Recordset是參數列表。您應該單獨更改它的參數。我從來沒有見過將參數列表發送給sp。

+0

存儲過程GetEmployees(記錄集OUT employeesList)中的參數「employeesList」屬於oracle類型「表」,不是參數列表。而且,它正在被代碼中的.net開發者使用的「OUT」方向使用。 .NET開發人員如何在調用存儲過程時發送這種類型的OUT參數。 – Shahzad

相關問題