キーワードにC#
into演算子を使用してselect句にクエリを設定します。
以下は、従業員の詳細を含むリストです-
IList<Employee> employee = new List<Employee>() { new Employee() { EmpID = 1, EmpName = "Tom", EmpMarks = 90, Rank = 8} , new Employee() { EmpID = 2, EmpName = "Anne", EmpMarks = 60, Rank = 21 } , new Employee() { EmpID = 3, EmpName = "Jack", EmpMarks = 76, Rank = 18 } , new Employee() { EmpID = 4, EmpName = "Amy" , EmpMarks = 67, Rank = 20} , };
ここで、kで終わり、ランクが<20および>5である従業員名をintooperatorを使用してフェッチします。
var res = from e in employee where e.Rank > 5 where e.Rank < 20 select e into name where name.EmpName.EndsWith("k") select name;
完全なコードを見てみましょう。
例
using System; using System.Linq; using System.Collections.Generic; public class Demo { public static void Main() { IList<Employee> employee = new List<Employee>() { new Employee() { EmpID = 1, EmpName = "Tom", EmpMarks = 90, Rank = 8} , new Employee() { EmpID = 2, EmpName = "Anne", EmpMarks = 60, Rank = 21 } , new Employee() { EmpID = 3, EmpName = "Jack", EmpMarks = 76, Rank = 18 } , new Employee() { EmpID = 4, EmpName = "Amy" , EmpMarks = 67, Rank = 20} , }; // fetching employee name that ends with k and rank is <20 and >5 var res = from e in employee where e.Rank > 5 where e.Rank < 20 select e into name where name.EmpName.EndsWith("k") select name; foreach (var emp in res) { Console.WriteLine("Name: "+emp.EmpName); Console.WriteLine("Marks: "+emp.EmpMarks); } } } public class Employee { public int EmpID { get; set; } public string EmpName { get; set; } public int EmpMarks { get; set; } public int Rank { get; set; } }
出力
Name: Jack Marks: 76
-
C#のvolatileキーワード
C#での同時実行の問題を減らすには、volatileキーワードを使用します。例を見てみましょう。 以下は、パブリック変数にvolatileキーワードを使用する方法です- class Program { public volatile int a; public void Program(int _a) { i = _i; } } 別の例を見てみましょう。2つの静的変数があります。新しい方法でそれらを設定します- _out = "Welcome!"; _
-
C#での集計とは何ですか?
集約は、C#のオブジェクト間の方向関係です。オブジェクト間の関係です。 たとえば、従業員と住所 従業員は単一の部門に関連付けられていますが、部門には複数の従業員を含めることができます。従業員と住所の例を見てみましょう- public class Address { . . . } public class Employee { private Address addr; public Employee (Address addr) { this.addr = ad