簡體   English   中英

使用Entity Framework調用oracle包/過程

[英]Calling oracle package/procedure using Entity Framework

在此鏈接中做的完全相同

我正在嘗試使用Entity Framework調用Oracle過程/程序包。 但是我得到的錯誤不同於鏈接中提到的錯誤。

public List<ClearTypes> GetOffices()
{
     var param1 = new OracleParameter("P_CUR", OracleDbType.RefCursor, ParameterDirection.Output);           
     var ATests = this.Database.SqlQuery<ClearTypes>("BEGIN PRC_GET_CLEAR(:P_CUR); end;", param1).ToList();            
     return ATests;
}

SQL查詢:

BEGIN
    OPEN P_CUR FOR

    SELECT ID, Name FROM ClearType;

END

ClearType類:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace MVCApp2.Models
{
    public class ClearTypes
    {
       public int ID{get;set;}
       public string Name{ get; set; }
    }
}

運行應用程序時出現的錯誤是:

System.Data.Entity.dll中發生類型為'System.ArgumentException'的異常,但未在用戶代碼中處理

附加信息:值不在預期范圍內。

這可能是什么原因?

如果您從Visual Studio中的Nuget包添加Oracle托管數據訪問包,這將起作用。

使用來自Oracle.ManagedDataAccess.Client; OracleParameter Oracle.ManagedDataAccess.Client; 不會拋出錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM