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

当这样写代码的时候就回报

IEnumerable<SelectListItem> item = dbContext.City.Select(n => new SelectListItem
            {
                Value=n.CityID.ToString(),
                Text = n.CityName
            });
 ViewData["city"] = item;

View

1 2            @Html.DropDownList("city")

错误为


把Controller改为

1  IEnumerable<SelectListItem> item = dbContext.City.Select(n => new SelectListItem
2             {
3                 Value=SqlFunctions.StringConvert((decimal)n.CityID).Trim(),
4                
5                 Text = n.CityName
6             });

错误消失。

posted @ 2013-07-18 14:53  骑猪上高速_D  阅读(212)  评论(0)    收藏  举报