System.ENUM没有受支持的SQL转换

时间:2011-07-25 04:42:42

标签: asp.net-mvc linq linq-to-sql

我正在尝试通过LINQ to SQL进行分组,但我希望将分组基于我的ENUM项目的文本描述。

        var qry = from s in _db.Complaints 
                  where s.Site.SiteDescription.Contains(searchTextSite)
                    && (s.Raised >= startDate && s.Raised <= endDate)
                  group s by s.ComplaintNatureTypeId.ToDescription()
                      into grp
                      select new
                      {
                          Site = grp.Key,
                          Count = grp.Count()
                      };

我认为这必须得到支持,因为它非常基础,并认为我错过了一些简单的东西。

任何关于我如何获得运行时错误的任何想法&amp;如何解决这个问题

提前致谢

1 个答案:

答案 0 :(得分:1)

Linq to Sql被翻译为Sql查询所以一切都必须可以转换为查询。您不能通过仅在代码中的内容对项目进行分组。如果你想按枚举分组,你可以使用它的唯一作为你的字符串枚举。