5

私はこのようなものを持っています

var emp = db.Employees.toList();

私の従業員テーブルには、ラムダ式でlinqを使用して、従業員名、従業員ID、および給与があります。別の変数で従業員IDにアクセスするにはどうすればよいですか。私はそれを探してみましたが、ラムダ式でlinqを使用してそれを行う解決策を見つけることができませんでした

var employeeLeaves = db.Leaves
     .Include("Employee")
     .Include("Employee.Manager")
     .Where(l => l.Status.Id == 1)
     .GroupBy(l => l.Employee.Manager.Id)
     .Select(l => l.GroupBy(k=>k.Employee.Id).Select(j=>j.GroupBy(‌​p=>p.GroupId)))
     .ToList(); 

これは私が持っている実際のクエリです。どのように書いたかは聞かないでください..:P今、employeeLeavesからid列を取得し、それを別の変数に保存したい

4

5 に答える 5

14

あなたがやろうとしていることは完全には明らかではありません。そのため、さまざまなアプローチで非常に多くの答えが得られています。「従業員のコレクション」を「ID のコレクション」に変えようとしている場合は、次のようなものが必要です。

var ids = emp.Select(x => x.Id);

またはより直接的に:

var ids = db.Employees.Select(x => x.Id);

(オプションでToList、これらのそれぞれの最後に。)

var良い本やチュートリアルの助けを借りて、LINQ (および などの多少関連する言語機能) をゼロから徹底的に学ぶことを強くお勧めします。あなたが望むものと少し似たようなことをするサンプルを見つけるだけで少しずつ学習することは、良いアプローチではありません.IMO.

于 2012-05-15T12:32:10.373 に答える
2
var empId = db.Employees.Single(x => x.id == 5).Id;
于 2012-05-15T12:32:56.267 に答える
0

を使用できますselect。多分このようなもの:

var result=db.Employees
              .Select(s=>s.emp_id);
于 2012-05-15T12:32:46.577 に答える
0

次の構文を試してください。

var empIds = db.Employees.Select(e=>e.EmpID)
于 2012-05-15T12:32:20.000 に答える
0
Database.Tablename.Single(x => x.id == anyId)

これにより、単一の行が選択されます

于 2013-09-28T11:15:31.730 に答える