Попытка вызова хранимой процедуры с использованием VB ASPX - PullRequest
0 голосов
/ 29 февраля 2012

Я пытаюсь выполнить хранимую процедуру и поместить данные в таблицу данных вручную (без использования мастера .net). Я использую vb.net и asp.net в визуальной студии.

Вот мой код, но я не могу понять, где я иду не так.

Imports System.Data.Sql,
Imports System.Data.SqlClient
Imports System.Diagnostics
Imports System
Imports System.Configuration
Imports System.Data
Imports System.Collections.Generic        
Partial Public Class WebForm3
Inherits System.Web.UI.Page



Dim myConn As New SqlConnection(System.Configuration.ConfigurationManager.AppSettings("ConnectionString"))

Public Cmd As New SqlCommand
Private _storedProc As String

Dim Conn As New SqlConnection(ConfigurationManager.AppSettings("ConnectionString").ToString)

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    If Not IsPostBack Then
        Dim dt As SqlDataReader
        Cmd.CommandType = CommandType.StoredProcedure
        Cmd.CommandText = "proc_getTEST"
        Cmd.Connection = Conn

        Conn.Open()

        Try
            dt = Cmd.ExecuteReader
            GridView1.DataSource = dt
            GridView1.DataBind()
            Conn.Dispose()
        Catch ex As Exception
        End Try
    End If
End Sub
End Class

Любые советы?

1 Ответ

2 голосов
/ 29 февраля 2012

Вместо DataReader, вы можете использовать SqlDataAdapter, где вы можете установить SqlConnection и SqlCommand для выполнения, а затем вызвать метод Fill SqlDataAdapter, передав DataTable, который хотите заполнить.

Поскольку ваш DataReader возвращает 2наборы результатов, вы должны использовать DataSet для этого.Для этой цели вы все равно будете использовать SqlDataAdapter, но вместо передачи DataTable в метод Fill вы передаете DataSet, и он создаст 2 DataTable внутри этого DataSet.

...