0

我已经从数据读取器中捕获了一些数据到一个列表中,现在我想知道将这些数据放入字符串中的最佳方法是什么。

我的要求是我需要从表中获取字段名称,然后将它们作为标题放在页面上。

 objConn = New SqlConnection(strConnection)
    objConn.Open()
    objCmd = New SqlCommand(strSQL, objConn)
    rsData = objCmd.ExecuteReader(0)

    If rsData.HasRows Then

        Do While (rsData.Read())

            Dim SubjectNames As New List(Of String)

            SubjectNames.Add(rsData.GetString("subject"))



        Loop

            SubjectList = SubjectNames.ToArray

现在我在想 ToArray 并且想知道如何将所有列表条目输出到我以后可以使用的字符串中。

值得注意的是,我这样做是内联的,因为我必须使用的 CMS 不允许后面有任何代码。

4

1 回答 1

1

如果我理解正确,您不知道如何将 a 转换List(Of String)为字符串。您可以使用String.Join并指定要用于连接单词的字符串:

Dim SubjectNames As New List(Of String)
Do While (rsData.Read())
    SubjectNames.Add(rsData.GetString("subject"))
Loop

Dim headers As String = String.Join(", ",  SubjectNames)

请注意,我已将列表的声明移到循环之外,否则您将始终为每条记录创建一个新列表。

编辑:所以你不知道如何访问 a Listor中的元素Array

a List(Of String)orString()中的元素已经是单独的字符串。您可以通过索引器访问每个元素。例如:Dim firstSubject = SubjectNames(0)或通过Linq: firstSubject = SubjectNames.First()。对于第 10 个元素:Dim subject10 = SubjectNames(9)因为索引是从零开始的。

MSDN:Visual Basic 中的数组

于 2012-10-30T11:59:52.983 回答