0

以下のコードを使用して、各レコードを読み取り、データを取得しています。すべてのレコードを表示する/1つずつ追加するように、毎回テキストをsummarytextboxに追加する方法はありますか?

 Dim str As String = Session("List")
 For Each s As String In str.Split(","c)
 SummaryTextBox.Text = Session("FirstName") & " " & Session("LastName")

 Next
4

4 に答える 4

5

私は以下を使用するのが好きStringBuilderです:

Dim str As String = Session("List")
Dim sb As New Text.StringBuilder()

For Each s In str.Split(","c)
    sb.Append(s)
Next

SummaryTextBox.Text = sb.ToString()

...そしてもちろん、連結された結果を表示するために任意の形式を使用できます。

編集:ティムがほのめかしたように、セッション変数とListセッション変数の違いがわからないので、OPによってさらに明確になるまで追加します。FirstNameLastNames

于 2013-09-18T14:39:30.893 に答える
3

はい。

Dim str As String = Session("List")
For Each s As String In str.Split(","c)
  SummaryTextBox.Text &= Session("FirstName") & " " & Session("LastName") & ", "
Next
于 2013-09-18T14:37:55.420 に答える
1

Stringbuilder が推奨される方法です。文字列は不変であるため、文字列に & " " が追加されるたびに、新しい文字列が作成されます。StringBuilder は、さまざまな操作を実行できる可変文字列を持つことを目的として設計されました。

于 2013-09-18T16:06:04.613 に答える
1

そのリストがファーストネームとラストネームにどのように関連しているかはわかりません。ただし、これによりアイデアが得られる場合があります。

Dim firstName = DirectCast(Session("FirstName"), String)
Dim lastName = DirectCast(Session("LastName"), String)
Dim query = From s In DirectCast(Session("List"), String).Split(","c)
            Select String.Format("{0} {1}: {2}", firstName, lastName, s)
SummaryTextBox.Text = String.Join(Environment.NewLine, query)
于 2013-09-18T14:40:27.767 に答える