最初にEF4.1コードでMVC3 ajaxgrid scaffoldingを使用していますが、次のエラーが発生しました:
タイプ 'System.Linq.IQueryable' を 'System.Data.Objects.ObjectQuery' に暗黙的に変換することはできません
エラーのあるコードは自動生成されます。
public ActionResult GridData(int start = 0, int itemsPerPage = 20, string orderBy = "UserID", bool desc = false)
{
Response.AppendHeader("X-Total-Row-Count", repository.Users.Count().ToString());
ObjectQuery<User> users = (repository as IObjectContextAdapter).ObjectContext.CreateObjectSet<User>();
users = repository.Users.Include(u => u.Role); //ERROR HERE
users = users.OrderBy("it." + orderBy + (desc ? " desc" : ""));
return PartialView(users.Skip(start).Take(itemsPerPage));
}
これはユーザー リポジトリ メソッドであり、ロールの外部キーです。
public IQueryable<Entities.User> Users
{
get { return context.Users; }
}
public IQueryable<Entities.Role>Roles
{
get { return context.Roles; }
}
変換を解決するにはどうすればよいですか?