Как решить проблемы с производительностью при использовании Entity Framework Core и Include() для больших объемов данных ⇐ C#
-
Anonymous
Как решить проблемы с производительностью при использовании Entity Framework Core и Include() для больших объемов данных
Я разрабатываю приложение с использованием Entity Framework Core (.NET 6) и сталкиваюсь с проблемами производительности при получении данных с помощью метода GetQuestionByTest(). Я хочу загрузить данные из TblMultipleChoices, связанные с сущностью TblQuestionTest, но данные довольно большие, и это замедляет время ответа приложения.
Вот часть кода, вызывающая проблему:
public IEnumerable GetQuestionByTest(int tesId) { вернуть контекст.TblQuestionTests .Include(e => e.Test) .Include(e => e.TblMultipleChoices) .Where(e => e.TestId == tesId); } Как решить эту проблему с производительностью, учитывая значительный объем данных? Существуют ли какие-либо стратегии или методы, которые я могу применить для более эффективной загрузки данных или предотвращения возникающих задержек?
Спасибо
РЕДАКТИРОВАТЬ: Прошу прощения, если мое объяснение было вам непонятно, поскольку я новичок в C#. Я использую эшафот, и моя модель с множественным выбором выглядит следующим образом: `публичный частичный класс TblMultipleChoice { общественный ИНТ MultipleChoiceId {получить; набор;
публичная строка? MultipleChoiceDesc {получить; набор; } общественный ИНТ ВопросId {получить; набор; } публичная строка Score {get; набор; } = ноль!; общественный виртуальный вопрос TblQuestionTest {get; набор; } = ноль!; }`
Я разрабатываю приложение с использованием Entity Framework Core (.NET 6) и сталкиваюсь с проблемами производительности при получении данных с помощью метода GetQuestionByTest(). Я хочу загрузить данные из TblMultipleChoices, связанные с сущностью TblQuestionTest, но данные довольно большие, и это замедляет время ответа приложения.
Вот часть кода, вызывающая проблему:
public IEnumerable GetQuestionByTest(int tesId) { вернуть контекст.TblQuestionTests .Include(e => e.Test) .Include(e => e.TblMultipleChoices) .Where(e => e.TestId == tesId); } Как решить эту проблему с производительностью, учитывая значительный объем данных? Существуют ли какие-либо стратегии или методы, которые я могу применить для более эффективной загрузки данных или предотвращения возникающих задержек?
Спасибо
РЕДАКТИРОВАТЬ: Прошу прощения, если мое объяснение было вам непонятно, поскольку я новичок в C#. Я использую эшафот, и моя модель с множественным выбором выглядит следующим образом: `публичный частичный класс TblMultipleChoice { общественный ИНТ MultipleChoiceId {получить; набор;
публичная строка? MultipleChoiceDesc {получить; набор; } общественный ИНТ ВопросId {получить; набор; } публичная строка Score {get; набор; } = ноль!; общественный виртуальный вопрос TblQuestionTest {get; набор; } = ноль!; }`
Мобильная версия