簡體   English   中英

如何在C#中從Oracle存儲過程獲取數據集值

[英]how to get dataset value from store procedure for oracle in c#

我的sp在curser中返回表,但是在與數據集映射時出現錯誤

DataSet ds = new DataSet();

command.CommandType = CommandType.StoredProcedure;
command.Parameters.Add("Size", OracleDbType.Int16).Value = size
command.Parameters.Add("Index", OracleDbType.Int16).Value = Index;
command.Parameters.Add("Data", OracleDbType.RefCursor).Direction = ParameterDirection.Output;

OracleDataAdapter da = new OracleDataAdapter(command);
da.Fill(ds);
return ds;

但我得到以下錯誤:
如何映射

[InvalidOperationException:由於對象的當前狀態,操作無效。] System.Web.UI.WebControls.ListControl.OnSelectedIndexChanged(EventArgs e)+130 System.Web.UI.Page.RaiseChangedEvents()+105 System.Web .UI.Page.ProcessRequestMain(布爾includeStagesBeforeAsyncPoint,布爾includeStagesAfterAsyncPoint)+3572

[InvalidOperationException:由於對象的當前狀態,操作無效。

此異常有多種可能性。

1) command.CommandText = *Your Sp's name will go here*; 看起來像您的代碼中缺少。 如果缺少,請提供CommandText。

2)中可能是由於web.config中的MaxHttpCollection設置。 默認情況下,它可以容納1000。在web.config中添加以下設置。

<appSettings>
    <add key="aspnet:MaxHttpCollectionKeys" value="2001" />
</appSettings> 

希望這能解決您的問題。

暫無
暫無

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

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