LINQ to Entities 无法识别方法,方法无法转换为存储表达式

LINQ to Entities does not recognize the method , method cannot be translated into a store expression

     private void BindGrid()
     {

       AdvContextEF db = new AdvContextEF();

       var query = from r in db.mytable

       orderby r.CreateDate descending
       select new
       {
          r.id,
          r.code,
          r.mytable.relatedtables[0].TheCenter.Name

       };

        RadGrid1.DataSource = query.ToList();
        RadGrid1.DataBind();
    }

我在 运行 上面的代码中遇到了以下错误。

LINQ to Entities 无法识别方法 'AdvContextEF.mymethod get_Item(Int32)' 方法,并且无法将此方法转换为存储表达式。

谢谢

与其尝试索引到 r.mytable.relatedtables[0],不如尝试使用 .FirstOrDefault()

      r.mytable.relatedtables.FirstOrDefault().TheCenter.Name

      Name = r.mytable.relatedtables.Select(rt => rt.TheCenter.Name).FirstOrDefault()