查询在实体框架

问题描述:

我写下面的代码查询在实体框架

var resumeedit=(from t in db.Resumes where t.User.UserID==theUserID && t.ResumeID==theResumeID select t).Select(t=> new EditResumes 
       { 
        Iswizard=t.isWizard, 
        Resumeid=t.ResumeID.ToString() 
       }).First(); 
      EditResumes ed = (EditResumes)resumeedit; 

和它给错误LINQ实体无法识别方法“System.String的ToString()”方法,和这种方法不能被翻译成商店表达。

像有消息称,L2E不做.ToString()。因此,使用.AsEnumerable(),使其L2O:

var resumeedit= (from t in db.Resumes 
       where t.User.UserID==theUserID && t.ResumeID==theResumeID 
       select t) 
       .AsEnumerable() 
       .Select(t=> new EditResumes 
       { 
        Iswizard=t.isWizard, 
        Resumeid=t.ResumeID.ToString() 
       }).First(); 

该投应该是不必要的:

EditResumes ed = (EditResumes)resumeedit; 

此行

Resumeid=t.ResumeID.ToString() 

,当你把它

Resumeid=t.ResumeID 

会发生什么?

或简单的做:

select new { t.ResumeID, t.isWizard } 
+0

有了您的第一个建议,代码将无法编译。在第二行中,第二行中的剧组失败。 – 2011-06-09 15:36:47