从函数返回DataTable

时间:2014-02-25 20:08:16

标签: asp.net vb.net

我有一个返回DataTable的函数就像这样(如果有行)......

Protected Function getAideData() As DataTable

    Dim dt As DataTable = DAL.ReturnData("select * from pg_PersonalInfo P Left Join pg_employeeInterview E on E.sesID = P.sesID ")
    If dt.Rows.Count > 0 Then
        Return dt
    End If

End Function

然后在我的页面中,我这样压缩它:

Dim d as datatable = getAideData

这是我的问题:如果我在数据表中有数据,那么我没有问题,但是如果我没有从我的方法返回任何数据那么就会出现问题。

我想我的问题是,如果我有一个函数并且无法返回数据表(没有行),那么我应该从函数返回什么?所以我可以稍后在我的应用程序中正确处理数据。

2 个答案:

答案 0 :(得分:2)

  

我想我的问题是,如果我有一个功能而且无法返回   数据表(没有行),然后我应该从我的函数返回什么?

什么都不返回

Protected Function getAideData() As DataTable

    Dim dt As DataTable = DAL.ReturnData("select * from pg_PersonalInfo P Left Join pg_employeeInterview E on E.sesID = P.sesID ")
    If dt.Rows.Count > 0 Then
        Return dt
    End If
    Return Nothing

End Function

答案 1 :(得分:0)

Function GetDataTable(ByVal qry As String) As DataTable
        Dim DbCon As New OleDb.OleDbConnection
        Try
            Dim ConStr As String
            ConStr = System.Configuration.ConfigurationManager.AppSettings("ConnCMSTrend").ToString()
            DbCon.ConnectionString = ConStr
            DbCon.Open()
            Dim queryString As String = qry
            Dim adapter As OleDbDataAdapter = New OleDbDataAdapter(queryString, ConStr)
            Dim res As DataSet = New DataSet
            adapter.Fill(res)
            DbCon.Close()
            GetCMSTrend = res.Tables(0)
        Catch ex As Exception
            DbCon.Close()
        End Try
    End Function

'注意您需要在appsettings文件中添加连接字符串。在上面的例子中,ConnCMSTrend是数据库连接字符串。

相关问题