我正在 MVC4 和 Entity Framework 5 中开发一个应用程序,最近在执行我的查询时遇到了这个异常。
{"LINQ to Entities 无法识别方法 'System.String PadLeft(Int32, Char)' 方法,并且此方法无法转换为存储表达式。"}
当我过去遇到类似错误时,我只是在查询之外创建了一个变量,然后在 LINQ 语句中使用了该变量。不幸的是,在这种情况下,我正在操纵行结果,所以我不确定如何去做,或者这是否是最好的方法。任何帮助,将不胜感激。我的查询如下:
IQueryable<System.String> LEAPrograms = db.Datamart_Draft
.Where(where => where.snapshot_id == snapshot_id
&& !String.IsNullOrEmpty(where.entity_program))
.Select(sel => (sel.entity_program.PadLeft(PROGRAMLENGTH, '0'))).Distinct();