对于每个下一个循环,仅返回第一行数据 [英] For Each Next loop only returning first row data

查看:68
本文介绍了对于每个下一个循环,仅返回第一行数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试用代码生成器(PDSA)创建的动态SQL数据集中的数据填充数据集.如果我想要第一行数据,或者我使用特定的"Where"子句来检索第一行,则没有问题.但是,当我遍历具有四个条目的数据集时,我没有得到这四个条目,而是得到了第一行4次.知道为什么吗?

代码示例:

I am trying to populate a dataset with data from a dynamic SQL dataset created by a code generator (PDSA). If I want the first row of data, or I use a specific "Where" clause to retrieve 1 row, I have no problem. But, when I loop through the dataset that has four entries, instead of getting the four entries, I get the first row 4 times. Any idea why?

Code Example:

Dim DS_C as New DS
Dim dr_A As DS_C.Tbl_ARow

        Me.DS_C.Tbl_A.Clear()

        Dim bo As PDSA.DataLayer.tbl_BDC = New PDSA.BusinessLayer.tbl_B

        With bo
            .ConnectionString = AppConfig.SQLConnectString
            .SelectFilter = PDSA.DataLayer.tbl_BDC.SelectFilters.All
            .WhereFilter = tbl_BDC.WhereFilters.None
            .Load()
        End With

        For Each dr As DataRow In bo.DataSet.Tables(0).Rows

            dr_A = DS_C.Tbl_A.NewRow

            With dr_A
                .CustomerID = bo.CustomerID
                .FirstName = bo.FirstName
                .LastName = bo.LastName
                .Street = bo.Street
                .City = bo.City
                .State = bo.State
                .ZipCode = bo.ZipCode
            End With

            DS_C.Tbl_A.AddTbl_ARow(dr_A)

        Next

推荐答案

.FirstName = bo.FirstName
            .LastName = bo.LastName
            .Street = bo.Street
            .City = bo.City
            .State = bo.State
            .ZipCode = bo.ZipCode



此处不使用dr而不是使用bo?



Instead of using bo here, should it not be using dr?


使用:

Using:

.CustomerID = dr("CustomerID")
.FirstName = dr("FirstName")
.LastName = dr("LastName")
.Street = dr("Street") 
.City = dr("City") 
.State = dr("State")
.ZipCode = dr("ZipCode")



而不是.CustomerID = bo.CustomerID等.
做到了!



instead of .CustomerID = bo.CustomerID etc.
did the trick!


这篇关于对于每个下一个循环,仅返回第一行数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆