У меня есть DataSet около 20000 строк, которые я конвертирую в IEnumerable<Dictionary<string, object>>
с этим кодом:
IEnumerable<Dictionary<string, object>> IEnu = ds.Tables[0]
.AsEnumerable()
.Select(r => ds.Tables[0]
.Columns.Cast<DataColumn>().Select(c => new {
Column = c.ColumnName,
Value = r[c]
}).ToDictionary(
i => i.Column,
i => i.Value != DBNull.Value ? i.Value : null
)
);
, но размер объекта IENU
слишком велик (около 7–8 МБ). Это очень большой размер для прохождения через сервис. Другой вариант - сгенерировать XML из набора данных (он занимает от 1 до 2 МБ), но все еще существует проблема, заключающаяся в том, что я не распознаю тип данных данных узла XML, а также не создаю класс, содержащий свойство узла XML и создать список, потому что мой запрос выбора является базой критериев, поэтому генерировать на стороне клиента после передачи в sql
Так как я могу передать тип данных в XML или есть какой-либо другой способ передачи данных из службы WCF в приложение Silverlight?