0

私は .NET 4.5、ブートストラップ、および LINQ を初めて使用し、エレガントに処理する方法がわからない問題に遭遇しました。誰かが私の思考プロセスを確認または修正してくれることを願っていました。特に慈善活動に関心がある場合は、私の目的を達成するのに役立つリソースを教えてください.

複数の外部アプリケーションにリンクする Web アプリのページを開発しています。アプリをグループ化する方法は、ブートストラップ タブ コントロールを使用し、各タブを論理グループにすることです。必要なアプリに関するすべての情報 (タイトル、説明、リンクなど) を返す LINQ クエリを作成しましたが、別のフィールド (ContainerID と呼びます) で結果をグループ化し、グループを配置する必要があります。正しい Bootstrap タブ内の適切な Repeater コントロールで。

今のところ、各タブ内に 1 つの Repeater を配置していますが、これは少しぎこちなく感じますが、これ以上の方法は思いつきません。私の考えは、次のことをすることでした:

1) LINQ クエリによって返されたオブジェクトに対して foreach ループを実行する
2) foreach ループ内で、"if ContainerID=" のような if ステートメントを記述し、結果をリストまたは配列に追加し、それを対応する Repeater のデータソースとして使用する3)すすぎ
、必要なカテゴリの数だけ繰り返します。

この道を歩み始めたとき、LINQ には foreach のようなものはないように見えるので、ステップ 1 で死んでしまいました。目的を達成するための最善の方法について何か考えはありますか? 前もって感謝します...

編集:私はこれに縛られていないことに言及する必要があります。私の目的を達成するためのより良い UI デザインがあれば、私はそれで大歓迎です。私はそれを実装する最もクリーンな方法を探しています。

4

1 に答える 1

0

linq クエリの結果は、クエリそのものです。結果を反復処理するまで、結果はありません。その後、次のように結果を反復処理できるはずです。

var items = Your LINQ Query

foreach(var item in items)
{
  if(ContainerID == item.id)
  {
     //do work
  }
}

または、クエリを反復して、操作できるオブジェクトのリストに変換する items.ToList() を実行できます。お役に立てれば。

于 2014-08-08T20:59:22.497 に答える