C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#でorder by、group byを使用する方法は?


Order byは、配列を昇順または降順で並べ替えるために使用されます

GroupBy演算子は、GroupingOperatorsカテゴリに属します。この演算子は、アイテムのフラットシーケンスを取得し、そのシーケンスを特定のキーに基づいてグループ(IGrouping )に編成し、シーケンスのグループを返します

class ElectronicGoods {
   public int Id { get; set; }
   public string Name { get; set; }
   public string Category { get; set; }
   public static List<ElectronicGoods> GetElectronicItems() {
      return new List<ElectronicGoods>() {
         new ElectronicGoods { Id = 1, Name = "Mobile", Category = "Phone"},
         new ElectronicGoods { Id = 2, Name = "LandLine", Category = "Phone"},
         new ElectronicGoods { Id = 3, Name = "Television", Category = "TV"},
         new ElectronicGoods { Id = 4, Name = "Grinder", Category = "Food"},
         new ElectronicGoods { Id = 5, Name = "Mixer", Category = "Food"},
      };
   }
}
class Program {
   static void Main() {
      //Group by
      var res=ElectronicGoods.GetElectronicItems().GroupBy(x => x.Category).Select(x => new {
         Key = x.Key,
         electronicGoods = x.OrderBy(c => c.Name)
      });
      foreach (var group in res) {
         Console.WriteLine("{0} - {1}", group.Key, group.electronicGoods.Count());
         Console.WriteLine("----------");
         foreach (var electronicGoods in group.electronicGoods) {
            Console.WriteLine(electronicGoods.Name + "\t" + electronicGoods.Category);
         }
         Console.WriteLine(); Console.WriteLine();
      }
      Console.ReadKey();
   }
}

出力

Phone - 2
----------
LandLine Phone
Mobile Phone
TV - 1
----------
Television TV
Food - 2
----------
Grinder Food
Mixer Food

注文者

class ElectronicGoods {
   public int Id { get; set; }
   public string Name { get; set; }
   public string Category { get; set; }
   public static List<ElectronicGoods> GetElectronicItems() {
      return new List<ElectronicGoods>() {
         new ElectronicGoods { Id = 1, Name = "Mobile", Category = "Phone"},
         new ElectronicGoods { Id = 2, Name = "LandLine", Category = "Phone"},
         new ElectronicGoods { Id = 3, Name = "Television", Category = "TV"},
         new ElectronicGoods { Id = 4, Name = "Grinder", Category = "Food"},
         new ElectronicGoods { Id = 5, Name = "Mixer", Category = "Food"},
      };
   }
}
class Program {
   static void Main() {
      //Order by
      var res = ElectronicGoods.GetElectronicItems().OrderBy(x => x.Category);
      foreach (var items in res) {
         Console.WriteLine(items.Name + "\t" + items.Category);
      }
      Console.ReadKey();
   }
}

出力

Grinder Food
Mixer Food
Mobile Phone
LandLine Phone
Television TV

  1. Google Chrome でタブ グループを使用する方法

    仕事、学校、または研究のために、複数の Web サイトにアクセスする必要がある場合があります。気が付くと、開いているタブが多すぎて、必要なときに必要なタブを見つけることができません。 Google Chrome では、この問題を解決する方法としてタブ グループを作成できます。これにより、関連する一連のタブを収集し、グループ名を適用できます。次に、必要に応じてそのグループを展開または折りたたみます。タブを制御できるように、Chrome のタブ グループについて説明しましょう。 Chrome で新しいタブ グループを作成する グループに配置する Chrome ブラウザー タブの 1 つを選択し

  2. Chrome でタブ グループを使用する方法

    Google Chrome で常に何十ものタブを開いている場合は、このヒントが役に立ちます。 大量の Web ページを開いたままにしておくと、コンピューターの速度が低下するだけでなく、適切なタブを見つけるのが難しくなります。 Google は、Chrome に既に組み込まれているツールであるタブ グループを使用して救助に来ました。おそらく存在すら知らないこの優れた機能を使用すると、関連するタブをグループにまとめて名前を付け、それらを縮小して単一のタブスペースしか占有しないようにすることができます. 例えば、あなたが新しいギターを購入しているとしましょう。調べているモデルを販売しているギ