2016-01-12 2 views
2

Я испытываю плохое время загрузки моих .aspx страниц, и сейчас я пытаюсь его оптимизировать. Сначала я использовал Visual Studio Performance Analyzer и SQL Server Profiler, чтобы найти медленные места, а затем положил Stopwatch es непосредственно в свой код.Linq-to-SQL очень медленная материализация

Не совсем понимаю, что происходит, но это выглядит как самый медленный метод в целом приложение является метод материализации, но это медленно только три небольших столиков:

internal T[] GetTableAsArray<T>() where T : class 
{ 
    return dataContext.GetTable<T>().ToArray(); 
} 

Четвертый стол в порядке , SQL Server Profiler показывает нулевые Duration SQL-запросов, но мой Stopwatch показывает 677ms, 884ms, 355ms и 8ms. Все таблицы составляют ~ 50 строк и ~ 7 столбцов.

Любые идеи? Где я должен копать?

+0

"маленький" как? Сколько записей есть? Почему вы вызываете 'ToArray()' кстати, из любопытства? Часто бывает хорошей практикой итерации таким образом, чтобы linq-to-sql откладывал загрузку. –

+0

Small - это ~ 50 строк и ~ 7 столбцов простых данных. Я нашел причину замедления, и, к сожалению, для меня это требует серьезного пересмотра моего приложения, чтобы исправить это. – Denis

+0

В чем причина? –

ответ

Смежные вопросы