【发布时间】:2017-12-14 21:46:16
【问题描述】:
我正在尝试按照一个简单的示例(下面的链接)来学习 Web API,但无法从我的基础表中列出所有记录。下面只会列出调用api时表中的最后一条记录。
<HttpGet>
Public Function GetEmployees() As Employee
Dim reader As SqlDataReader = Nothing
Dim myConnection As SqlConnection = New SqlConnection()
myConnection.ConnectionString = "myconnectionstring"
Dim sqlCmd As SqlCommand = New SqlCommand()
sqlCmd.CommandType = CommandType.Text
sqlCmd.CommandText = "Select * from tblEmployee"
sqlCmd.Connection = myConnection
myConnection.Open()
reader = sqlCmd.ExecuteReader()
Dim emp As Employee = Nothing
While reader.Read()
emp = New Employee()
emp.EmployeeId = Convert.ToInt32(reader.GetValue(0))
emp.Name = reader.GetValue(1).ToString()
emp.ManagerId = Convert.ToInt32(reader.GetValue(2))
End While
Return emp
myConnection.Close()
End Function
我尝试将函数类型更改为以下类型,但出现错误“无法将 'Employee' 类型的对象转换为类型 'System.Collections.Generic.IEnumerable”
Public Function GetEmployees() As IEnumerable(Of Employee)
【问题讨论】:
-
您需要一个通用列表 List
。然后,您将在循环中添加一个新的单个实例。
标签: asp.net sql-server vb.net asp.net-web-api