ProKiLL
@ProKiLL
Системный администратор

В каком виде луче всего передавать данные?

Добрый день!
Большая просьба проконсультировать в каком виде луче всего передавать данные через WCF.
Необходимо передать следующую информацию:
- 1 таблица из БД (MySQL), 5 колонок и почти 10 тыс. записей.
- Сводная таблица состоящая из 3 таблиц БД (MySQL), 18 колонок по 7-9 записей для каждой записи из 1 таблицы.
Принцип работы приложения:
У клиента в главном окне отображается таблица 1, при открытии записи отображается подробная информация.

Первоначальный вариант:
Составлялся класс на стороне сервера после чего отправлялся клиенту.
Все остальные манипуляции проводились только с полученным классом без дополнительных запросов к серверу.
Недостатки:
Долгое формирование класса на стороне сервера

Новый вариант:
Передача первой таблицы в 10 тыс. записей в формате DataTable - значительный прирост в скорости отправки клиенту
Дополнительный запрос к серверу для уточняющей информации по каждой отдельной записи (получение сводной таблицы в формате класса) формируется каждый раз при просмотре записи.

Вопрос:
Есть ли более оптимальное решение данной задачи?
  • Вопрос задан
  • 144 просмотра
Пригласить эксперта
Ответы на вопрос 1
dmitry_pavlov
@dmitry_pavlov
World-class .NET freelance contractor (remotely)
Можно реализовать постраничный вывод (pagination). Можно попробовать использовать двоичный формат передачи - сжать данные. Можно - сделать что-то вроде нарезки https://msdn.microsoft.com/en-us/library/aa717050.aspx

P.S. Вариант с передачей облегченного набора данных, который нужен только для вывода в таблицу и подгрузкой данных по деталям записи - тоже нормально.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы