0
using (SmartEntities employeeverificationcontext = new SmartEntities())
{
    Employee emp = (from c in employeeverificationcontext.EmployeeEntity 
                    where c.Employee_ID == emp_detail.EmployeeID 
                    select new Employee {c.Status}).FirstOrDefault();
    emp.Status = emp_detail.Status;
    int i=employeeverificationcontext.SaveChanges();
    if (i > 0)
    {
        result = "Verification Process Completed";
    }
}

エラー: エラー 1 'System.Collections.IEnumerable' を実装していないため、コレクション初期化子で型 'SmartWCF.Employee' を初期化できません**

4

2 に答える 2

1

select new Employee {c.Status}現在のオブジェクトを選択する代わりに( c)

したがって、クエリは次のようになります。

Employee emp = (from c in employeeverificationcontext.EmployeeEntity 
               where c.Employee_ID == emp_detail.EmployeeID 
               select c).FirstOrDefault();

また

Employee emp = employeeverificationcontext.EmployeeEntity
                      .FirstOrDefault(c=> Employee_ID == emp_detail.EmployeeID);
于 2013-01-11T08:01:51.243 に答える
0

の選択のみが次のStatusように行われます。

var employeeStatus = (from c in employeeverificationcontext.EmployeeEntity 
                        where c.Employee_ID == emp_detail.EmployeeID 
                      select c.Status).FirstOrDefault();

しかし、それを新しいステータスに設定してデータ コンテキストに保存したい場合、これは役に立ちません。その場合は を選択する必要がありますEmployee

この投稿で言及されているいくつかの代替手段があります:行全体をロードせずに LINQ で単一の列を更新する方法は?

于 2013-01-11T08:16:00.510 に答える