1

linqでクエリを作成し、従業員番号に基づいて10人の異なる従業員の情報を返しました。私はlinqで作業するのは初めてですが、それを返すのに問題があります。このコードで何が間違っているのですか?

 public class queryClass
    {
        private string firstName { get; set; }
        private string lastName { get; set; }
        private int employeeNo { get; set; }
        private string department { get; set; }
    }

    public static queryClass[] GetEmpData(int empID1, int empID2, int empID3, int empID4, int empID5, int empID6, int empID7, int empID8, int empID9, int empID10)
    {

        using(var context = new EmpInfoDataContext())
        {
            var query = from e in context.EmployeTable
                        join j in context.JobTitles on e.JobTitle equals j.JobTitle
                        where e.EmployeeNo == empID1
                        where e.EmployeeNo == empID2
                        where e.EmployeeNo == empID3
                        where e.EmployeeNo == empID4
                        where e.EmployeeNo == empID5
                        where e.EmployeeNo == empID6
                        where e.EmployeeNo == empID7
                        where e.EmployeeNo == empID8
                        where e.EmployeeNo == empID9
                        where e.EmployeeNo == empID10
                        select new  {e.FirstName, e.LastName, e.EmployeeNo, j.Department};

            return query.ToArray();
        }
    }

'return query.Toarray(); "の下で、エラーは"式タイプを変換できません' {FirstName:string、LastName:string、EmployeeNo:int、Department:string}[]からreturnタイプ'Employeephotos.Models.HomeModel.queryClass []」

あなたが与えることができるどんな助けにも感謝します。

4

2 に答える 2

2

select new {e.FirstName, e.LastName, e.EmployeeNo, j.Department};匿名タイプを返しています

queryClassを返すように変更します

select new  queryClass {firstName = e.FirstName, lastName =  e.LastName, employeeNo =e.EmployeeNo, department = j.Department};
于 2013-02-12T18:35:00.377 に答える
2

where句は単一のブール式である必要があります。

where e.EmployeeNo == empID1 || e.EmployeeNo == empID2 ... etc

選択したアイテムのタイプを必ず宣言してください

select new queryClass {
    firstName = e.FirstName,
    lastName = e.LastName,
    employeeNo = e.EmployeeNo,
    department = j.Department
};
于 2013-02-12T18:26:24.607 に答える