Привязка ASP.NET GridView к Oracle SYS_REFCURSOR - PullRequest
2 голосов
/ 24 октября 2008

У нас есть процедура в Oracle с выходным параметром SYS_REFCURSOR, который возвращает данные, которые мы хотим связать с элементом управления ASP.NET GridView. Я уже видел это, но не могу найти исходную ссылку, которую использовал для решения проблемы.

Вот как выглядит процедура:

create or replace PROCEDURE GETSOMEDATA
(
    P_Data OUT SYS_REFCURSOR
)
AS
BEGIN
    OPEN P_Data FOR SELECT * FROM SOMETABLE;
END GETSOMEDATA;

А пока GridView - это просто скелет:

<asp:GridView ID="grdData" runat="server" AutoGenerateColumns="true"></asp:GridView>

Ответы [ 3 ]

1 голос
/ 28 октября 2008

Попробуйте что-то вроде: (не указал, на каком языке)

    Public Function GetSomeData() as DataTable
        Dim OrclConn as New OracleConnection("Connectionstring")
        Dim OrclCmd as New Oraclecommand("GETSOMEDATA", OrclConn)
        OrclCmd.CommandType = CommandType.StoredProcedure
        OrclCmd.Parameters.Add("P_Data", OracleType.Cursor).Direction = ParameterDirection.Output 'Or ParameterDirection.ReturnValue

        Dim OrclDA as New OracleDataAdapter(OrclCmd)
        Dim RtnTable as DataTable
        OrclConn.Open
        OrclDA.Fill(RtnTable)
        OrclConn.Close

        Return RtnTable
    End Function
1 голос
/ 24 октября 2008

просто гуглил. Я пытаюсь найти для вас ответ, Я сталкиваюсь с этой статьей .

Может быть, это может помочь вам в этом вопросе.

0 голосов
/ 11 декабря 2008
Dim oracon As New OracleConnection("User Id=developer;Password=developer;Data Source=orcl;")
        Dim ds As New Data.DataSet
        Dim qry As String
        oracon.Open()
        qry = "select * from Employee"
        Dim adp As New OracleDataAdapter(qry, oracon)
        adp.Fill(ds)
        GridView1.DataSource = ds
        GridView1.DataBind()
        oracon.Close()
...