为什么LINQ到实体无法识别方法'System.String的ToString()? [英] Why LINQ to Entities does not recognize the method 'System.String ToString()?
本文介绍了为什么LINQ到实体无法识别方法'System.String的ToString()?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
里面MVC3 Web应用程序获取错误。 LINQ到实体无法识别方法'System.String的ToString()方法,而这种方法不能被翻译成店前pression。
当我尝试获取使用EF从查询值:
公共类DataRepository
{
公共mydataEntities1的DbContext =新mydataEntities1(); 公开名单< SelectListItem> GetPricingSecurityID()
{
VAR pricingSecurityID =(从米dbContext.Reporting_DailyNAV_Pricing
选择新SelectListItem
{
文本= m.PricingSecurityID.ToString(),
值= m.PricingSecurityID.ToString()
}); 返回pricingSecurityID.ToList();
}
}
解决方案
这不能转换为SQL。我想,在理论上,它可以,但没有实现。
您只需要执行您的投影你有你的结果后:
VAR pricingSecurityID =(从dbContext.Reporting_DailyNAV_Pricing米
选择m.PricingSecurityID).AsEnumerable()
。选择(X =>新建SelectListItem的{text = x.ToString(),值= x.ToString()});
Getting error inside MVC3 web application.
LINQ to Entities does not recognize the method 'System.String ToString()' method, and this method cannot be translated into a store expression.
when i try to fetch values using EF from query :
public class DataRepository
{
public mydataEntities1 dbContext = new mydataEntities1();
public List<SelectListItem> GetPricingSecurityID()
{
var pricingSecurityID = (from m in dbContext.Reporting_DailyNAV_Pricing
select new SelectListItem
{
Text = m.PricingSecurityID.ToString(),
Value = m.PricingSecurityID.ToString()
});
return pricingSecurityID.ToList();
}
}
解决方案
That can't be converted to SQL. I guess, in theory, it could, but isn't implemented.
You just need to perform your projection after you have your results:
var pricingSecurityID = (from m in dbContext.Reporting_DailyNAV_Pricing
select m.PricingSecurityID).AsEnumerable()
.Select(x => new SelectListItem{ Text = x.ToString(), Value = x.ToString() });
这篇关于为什么LINQ到实体无法识别方法'System.String的ToString()?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文