VB.Net 数据集行数总是返回 0

VB.Net dataset rows count always returning 0

我为我的存储过程创建了一个 table 适配器,returns 来自 table 的一行。将其添加到数据集后,我尝试遍历此 table 的行数以检索数据,但它始终不返回任何行。如果我尝试在数据集设计器中预览数据,我通常会得到该行,但是当我在代码中尝试时,我什么也得不到

For intI As Integer = 0 To Me.Ds1.SP_Get_Data_Communication_Parameters.Rows.Count - 1

            Dim IP As String = Ds1.SP_Get_Data_Communication_Parameters.Rows(intI)("Remote_IP_address")

        Next

table适配器是一种在数据库和数据table之间双向移动数据的设备table。

数据table是数据集的一部分(数据集是数据的集合table),并且是数据库(部分或全部)的客户端表示table.

要使用数据库数据,您可以使用 table 适配器将其从数据库 table 传输到数据 table。您使用它,也许编辑它,也许将它保存回数据库

根据您的描述,您似乎并没有在检查数据之前实际使用 table适配器来填充数据table。数据集设计器只是 table 适配器和关联数据 table 类 的可视化表示;这并不意味着数据库数据在您的程序中自动可用

您需要一个代码,例如:

Dim ta As New YourDatasetNameTableAdapters.SP_Get_Data_Communication_ParametersTableAdapter()

ta.Fill(Me.Ds1.SP_Get_Data_Communication_Parameters, any, parameters, the, sproc, needs, here)

然后你可以翻资料table看到TA下载的数据


编辑脚注:

如果您对行进行更改,例如

For Each ro in Ds1.SP_Get_Data_Communication_Parameters 
  ro.FirstName = "John"
Next ro

然后您可以使用 table 适配器的更新方法将更改发送回数据库

at.Update(Ds1.SP_Get_Data_Communication_Parameters)

Update 将 运行 所有不同类型的查询,而不仅仅是 UPDATE。新添加的行将被插入。删除的行将被删除。微软真的应该将其命名为 SaveChanges