-1

クラスにある配列を取得し、foreachステートメントを使用して値をテーブルに反復処理しようとしています。

私のクラスは次のように設定されています。

public class items
{
   private string[] list;

   public items()
   {
      list[0] = "apples";
      list[1] = "oranges";
      list[2] = "grapes";
      list[3] = "bananas";
   }
}

私のpage_loadイベントでは、クラスを呼び出そうとしています。

list fruit = new list();

StringBuilder sb = new StringBuilder();

sb.Append("<table id=\"items\">");
sb.Append("<tr>");
sb.Append("<th>Item</th>");
sb.Append("<th>Description</th>");
sb.Append("<th>Unit Cost</th>");

foreach(string fruit in list)
{
   sb.Append(String.Format("{0}", items.fruit));
}

私はforeachループを使うのが初めてで、それは本当に紛らわしいです。私が正しい方向に進んでいるなら、私はある程度の明確さを望んでいます。

ありがとう。

4

5 に答える 5

0

What you want is this:

sb.Append("<table id=\"items\">");
sb.Append("<tr>");
sb.Append("<th>Item</th>");
sb.Append("<th>Description</th>");
sb.Append("<th>Unit Cost</th>"); 
sb.Append("</tr>");
foreach(string fruit in list)
{
   sb.Append("<tr>");
   sb.Append(String.Format("{0}", fruit));
   sb.Append("description");
   sb.Append(String.Format("2p");
   sb.Append("</tr>");
}
sb.Append("</table>");
于 2013-03-01T17:17:37.057 に答える
0

Using Linq: あなたの配列が果物であると仮定する

fruit.ToList().ForEach(f=> sb.Append(String.Format("{0}", f));

理想的にはdescription、リストにある場合は、次のようにすべてのタグをテーブル本体にunitCost追加できます。<tr>

StringBuilder sb = new StringBuilder();
sb.Append("<table id=\"items\">");
sb.Append("<tr><th>Item</th><th>Description</th><th>Unit Cost</th></tr>");

newList.ToList()
 .ForEach(f=> 
          sb.Append(String.Format("<tr><td>{0}</td><td>{1}</td><td>{2}</td></tr>", 
                         f.item, f.desc, f.unitCost))
         );
sb.Append("</table>");
于 2013-03-01T17:23:35.520 に答える