我已经从datareader中将一些数据捕获到列表中,现在我想知道将这些数据放入字符串的最佳方法是什么。
我的要求是我需要从表中获取字段名称,然后将这些作为标题放在页面上。
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不允许任何代码。
答案 0 :(得分:1)
如果我理解正确,您不知道如何将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)
请注意,我已将列表的声明移到循环之外,否则您将始终为每条记录创建一个新列表。
修改:因此您不知道如何访问List
或Array
中的元素。
List(Of String)
或String()
中的元素已经是单独的字符串。您可以通过索引器访问每个元素。例如:Dim firstSubject = SubjectNames(0)
或Linq
:firstSubject = SubjectNames.First()
。对于第10个元素:Dim subject10 = SubjectNames(9)
,因为索引是基于零的。