c# .net Adsense ADO.NET Linq Viruses/security asp.net MVC JQuery Angular-js Node-js SEO Java C++ SQL API Networking vb.net .Net Css JavaScript Generics c#.Net entity framework HTML Website host Website Construction Guide HTTP tutorial W3C tutorial Web Services JSON Psychology Ionic framework Angular ReactJS Python Computer Android
Linq

LINQ to Entities does not recognize the method 'System.String get_Item(System.String)' method, and this method cannot be translated into a store expression

| | ASP-NET , Linq , web

I got the following error while executing the linq query "LINQ to Entities does not recognize and this method cannot be translated into a store expression."

 

LINQ Query:

 

var queryresult = (from x in db.Specifications
                              where x.Brand.Name.Contains(brand)
                              select
                               new specsModel { specificationid = x.SpecificationId, Title = x.Title,
                                   Picture = System.Configuration.ConfigurationManager.AppSettings["BlogUrl"] + db.Pictures.Where(p =>
                                   p.SetActive == true && p.SpecificationId == x.SpecificationId).ToList().
                                   FirstOrDefault().Path }).ToList();

 

Solution:

 

 var stringURL = System.Configuration.ConfigurationManager.AppSettings["BlogUrl"];

 

I assigned the value to the string variable and passed in to the linq query and executed. It works fine.

 

var queryresult = (from x in db.Specifications
                              where x.Brand.Name.Contains(brand)
                              select
                               new specsModel { specificationid = x.SpecificationId, Title = x.Title,
                                   Picture = stringURL + db.Pictures.Where(p =>
                                   p.SetActive == true && p.SpecificationId == x.SpecificationId).ToList().
                                   FirstOrDefault().Path }).ToList();