2

代码:

public static GetRows()
        {

            var to_ret = db.TableRows.Select(x=> new TableRowModel(
            {
                TableRowId = x.TableRowId,
                Type = x.Type,
                Name = x.Name,
                CreatedAt = x.CreatedAt,
                ModifiedAt = x.ModifiedAt,
                Enums = x.Enums.AsExpandable().Select(y => y.ToEnumModel())
            });
            return to_ret;
        }

public static EnumModel ToEnumModel(this Enum x)
        {
            var to_ret = new EnumModel()
            {
                CFPId = x.CFPId,
                CreatedAt = x.CreatedAt,
                ModifiedAt = x.ModifiedAt,
            };
            return to_ret;
        }

运行GetRows给出错误说:

LINQ to Entities 无法识别方法 'System.Linq.IQueryable1[Test.Models.Enum] AsExpandable[Enum](System.Linq.IQueryable1[Test.Models.Enum])' 方法,并且此方法无法转换为存储表达式。

甚至尝试过AsExpandable喜欢db.TableRows.AsExpandable().Select。不工作。

4

0 回答 0