sencsk Ответов: 1

Linq снижает производительность моего SQL-сервера?


несколько дней назад я изменил код операций CRUD . entity framework SP для LINQ.
теперь я могу видеть частый блок sql server. дайте мне знать, почему?

это LINQ для вставки или параллельный LINQ для вставки делают свою производительность базы данных?

Что я уже пробовал:

как только производительность на основе использования sql server высока или CRUD через linq с одновременными пользователями, это имеет смысл. я действительно не понимаю

1 Ответов

Рейтинг:
2

F-ES Sitecore

Если не было убедительной причины использовать LINQ, то вернитесь к SPs, если они работают. Если вы написали целую кучу LINQ-кода без какого-либо рассмотрения того, как генерируется SQL, то SQL, который вы запускаете, будет сильно отличаться от SPs, будет много доступа к таблицам, о которых вы не знаете, и все такое.

Если вы объединяете таблицы, то убедитесь, что вы не используете "ленивую загрузку" (google "entity framework lazy loading"). Вы также можете использовать такие инструменты, как SQL Profiler, чтобы увидеть генерируемый SQL.

Однако в конце дня просто вернитесь в SPs, если они работают. Преимущества LINQ заключаются в том, что вам не нужно писать много SQL самостоятельно, но вы должны помнить о том, как вы просите EF сгенерировать SQL, это большая тема, выходящая за рамки сообщения на форуме. Не думайте, что LINQ-это панацея, которая дает вам лучшую производительность и т. д., а также более простой код.