1

当我尝试运行以下代码时。

var result = from c in db.brand
             where c.title.contains("test")
             select c.title + "-" +c.brand;

List<string> lst = r.ToList();

它给出了以下错误。

LINQ to Entities 无法识别方法“System.String ToString()”方法,并且该方法无法转换为存储表达式。

4

3 回答 3

6

我建议以匿名类型获取标题和品牌,然后在进程中执行字符串连接:

var list = db.Brand.Where(c => c.Title.Contains("test"))
                   .Select(c => new { c.Title, c.Brand })
                   .AsEnumerable() // Rest of the query in-process
                   .Select(x => x.Title + " " + x.Brand)
                   .ToList();
于 2012-04-09T09:07:23.713 回答
1

try this:

var result = from c in db.brand where c.title.contains("test") select c;
var finalResult = result.ToList().Select(ss=> ss.title + "-" + ss.brand);
于 2012-04-09T09:07:55.243 回答
-1

try:

var result = from c in db.brand where c.title.contains("test") select new { c.title + "-" +c.brand }
于 2012-04-09T09:08:55.557 回答