Получить большой объект с WCF - PullRequest
2 голосов
/ 18 октября 2011

Я пытался получить большой объект с XML поверх WCF.Он не работает, если я установил maxStringContentLength={Default value}.

. Он работает только при увеличении maxStringContentLength, но снижает производительность.

Есть ли решение этой проблемы без увеличения maxStringContentLength

Ответы [ 2 ]

1 голос
/ 18 октября 2011

Это кодовый запах для большинства сред WCF.Если вы отправляете большой кусок XML, это обычно означает, что вы не используете DataContract для отправки объектов.

Вы также отметили, что хотите использовать потоковую передачу.Если это так, то квота считывателя не должна вступать в игру, потому что вы передаете поток, который будет содержать ваши данные вообще без контракта на данные.

Если вы используете буферы, то вы можетеувеличьте размер ваших ReaderQuotas, но это идет в ущерб памяти.Помните, что эти буферы создаются для каждого входящего вызова WCF, который вы можете обрабатывать одновременно, чтобы вы могли столкнуться с проблемами.

1 голос
/ 18 октября 2011

Краткий ответ: нет (для буферизованных сообщений).Если вам нужно получить большие строковые данные, вам нужно увеличить квоты на чтения .Вы должны установить их в соответствии с максимальным объемом данных, которые вы хотите разрешить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...