我写了以下代码
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 to Entities无法识别方法'System.String ToString()'方法,并且此方法无法转换为商店表达式。
答案 0 :(得分:1)
这一行
Resumeid=t.ResumeID.ToString()
当你做到这一点时会发生什么
Resumeid=t.ResumeID
或简单的做:
select new { t.ResumeID, t.isWizard }
答案 1 :(得分:0)
就像消息所说,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;