Предварительная компиляция запросов LINQ при использовании Entity Framework - PullRequest
1 голос
/ 14 ноября 2011

Я пытаюсь предварительно скомпилировать запросы в моем приложении Entity Framework, используя мой объект entity.

Я получаю сообщение о том, что не существует неявного преобразования ссылок из myEntities в System.Data.Linq.DataContext .

Пример моего скомпилированного запроса приведен ниже. myEntities наследует ObjectContext, который, вероятно, является причиной проблемы, но я не уверен, почему.

    //Compiled Version
    public static Func<myEntities, Users_GetUsersInRoleInputs, IQueryable<UserRole>> FilteredResult =

               CompiledQuery.Compile<myEntities, Users_GetUsersInRoleInputs, IQueryable<UserRole>>(

               (myEntities, Users_GetUsersInRoleInputs criteria) =>
                   (from t1 in dc.UserRoles
                   where (t1.Role_ID == criteria.RoleId)
                   select t1));

    public class Users_GetUsersInRoleInputs
    {
        public int RoleId { get; set; }
        public int CompanyId { get; set; }
    }

Кто-нибудь может подсказать, почему это может быть и как я могу использовать компиляцию запросов в моем проекте?

1 Ответ

3 голосов
/ 14 ноября 2011

Вы используете неправильный CompiledQuery. Существует один для L2S и другой для L2E . Это последнее, что вы хотите. Проверьте ваше заявление using в верхней части файла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...