Скомпилированные запросы Linq to SQL в веб-приложении MVC
Я создал веб-приложение с помощью mvc 4. Сначала я реализовал приложение без скомпилированных запросов, но для повышения производительности я хочу использовать скомпилированные запросы. Но я не могу использовать запросы из-за DataContext
, У меня есть класс для запросов с множеством методов, таких как:
private static Func<DataContext, int, IEnumerable<Information>> _OwnInformations;
public static List<Information> GetOwnInformations(DataContext dataContext, int userId)
{
if (_OwnInformations == null)
{
_OwnInformations = CompiledQuery.Compile<DataContext, int, IEnumerable<Information>>((dc, id) => (
from tm in dc.GetTable<Information>()
where tm.User.Id == id || tm.Author.Id == id
select tm
));
}
return _OwnInformations.Invoke(dataContext, userId).Distinct().ToList();
}
DataContext
создается и располагается в Controller
классы. У меня проблема в том, что невозможно использовать скомпилированный запрос с разными DataContext
с. Также я не хочу брать DataContext
в сессии.
У кого-нибудь есть идея, чтобы решить мою проблему?
1 ответ
Я нашел свою проблему. Мне нужен был собственный частичный класс DataContext с моими таблицами и соединением внутри. Итак, теперь я могу использовать мои скомпилированные запросы:).