使用函数从 SQL 服务器填充下拉框

Populate dropdown box from SQL Server using a function

我正在尝试遵循用 C# 编写的 video 并将其转换为 vb(使用函数从 SQL 服务器填充下拉框) 这是有效的 C# 代码:

private list<product> getallprodcuts()
{
    Try
    {
          using(PropSolWebDBEntities db= new PropSolWebDBEntities())
          list<product> products = (from x in db.product select x).tolist;
    }
    catch(exception)
    {
           Return Null;
    }
}

还有我无法上班的vb:

Private Function getallproducts() As List( Of<product>)

        Try
            Dim db As New PropSolWebDBEntities
            Dim products As list <product> = (from x in db.product select x).tolist 

            Return products

        Catch ex As Exception
            Return vbNull
        End Try
    End Function

我做错了什么?

您不需要 LINQ 部分,因为您不是 filtering/grouping/ordering。 Using 块负责为您处理上下文。您只是错过了一些语法差异。

Private Function getallproducts() As List(Of product)
  Dim results As List(Of product) = Nothing
  Using db As New PropSolWebDBEntities
     results = db.product.ToList 
  End Using
  Return results
End Function

List 应翻译为 List(of product)。

return null 应该翻译成 Return Nothing.

使用 using 而不是声明 db 变量。

我没有编译代码,但是是这样的:

Private Function getallproducts() As List(Of product)

Try
    Using db As New PropSolWebDBEntities
        Dim products As list(Of product) = (From x In db.product Select x).ToList()
        Return products
    End Using

Catch ex As Exception
    Return Nothing
End Try

结束函数