2012-07-24 57 views
0

标准类我只是想知道我是否能在2008年VB我们如何创建于2008年VB

我试图创建一个函数GETROW(txtSQL),它接受SQL作为参数创建一个标准类。我希望这个函数返回包含数据库表中的列作为属性的对象,以便我知道你不能有在在设计时运行时生成的属性我能为

myObj=GetRow("select name, address from tbl_contacts where id=1") 
txtname.text=myObj.name 
+0

你尝试过什么,我相信你已经显示的是你想要的功能的签名。 – 2012-07-24 04:41:49

回答

1

至于使用。由于SQL只是一个字符串,编译器不知道.Name需要是一个属性。

最好的我可以为您提供如下:

Function GetRow(cnn As SqlConnection, sql As String) As DataRow 
    Using dtb As New DataTable 
     Using dad As New SqlDataAdapter(sql, cnn) 
     dad.Fill(dtb) 
     End Using 
     If dtb.Rows.Count >= 1 Then 
     Return dtb.Rows(0) 
     Else 
     Return Nothing 
     End If 
    End Using 
    End Function 

    Sub test() 
    Using cnn As New SqlConnection("Data Source=mycomputername;Timeout=10;User ID=myusername;Password=mypassword;") 
     cnn.Open() 
     Dim strSql As String = "select name, address from tbl_contacts where id=1" 
     Dim drw As DataRow = GetRow(cnn, strSql) 
     txtName.text = CStr(drw("name")) 
     cnn.Close 
    End Using 
    End Sub 
+0

我非常高兴也很难过,因为我一直在使用这种方法来记录时间来填充datagridview。 – Prajwal 2012-07-29 07:35:14