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

私があなたを正しく理解しているなら、あなたはList(Of String)a を文字列に変換する方法を知りません。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)経由。10 番目の要素の場合:インデックスは 0 ベースであるため。LinqfirstSubject = SubjectNames.First()Dim subject10 = SubjectNames(9)

MSDN: Visual Basic の配列

于 2012-10-30T11:59:52.983 に答える