В настоящее время я работаю над проблемой производительности в проекте ASP.Net при отправке данных обратно на наш сервер. Набор данных довольно большой и содержит более 1000 элементов, каждый элемент является экземпляром одной и той же модели представления.
Модель представления состоит из более чем 30 свойств (строки, идентификаторы, десятичные числа, даты и время, перечисления и т. д.). Наша проблема заключается в том, что привязка модели занимает слишком много времени, что сильно повлияет на работу пользователя. Мы говорим 8-10 минут на один пост.
Я смотрю запрос в Fiddler, и созданный JSON в порядке, и запрос запускается довольно быстро. При установке точки останова в вызываемом методе контроллера она не срабатывает в течение 8-10 минут.
В рамках моего исследования я урезал модель представления, изменив дату и время на двойные значения, Guid на строки, перечисления на целые числа и десятичные дроби на двойные числа. Это сократило время примерно до 30 секунд, чтобы данные попали в метод контроллера. Я предполагаю, что это как-то связано с тем, что фреймворку приходится упаковывать тысячи свойств в их типы .Net.
Есть ли другой способ решения этой проблемы? изменение типов данных в модели представления, вероятно, вызовет у нас много проблем, а также много дополнительной работы.