Хай!
Передаю файлы с помощью WSE 3.0 Message Transmission Optimization Mechanism (MTOM) который типа поддерживает передачу больших файлов со слов справки microsoft:
When the amount of data send or received by the Web service exceeds 4 MB, configure the Web server to handle the larger amount of data.
To send and receive the largest possible SOAP messages, set the value of the <maxMessageLength> element to -1.
The following code example disables the limit on the maximum size of SOAP messages by WSE.
<configuration>
<microsoft.web.services3>
<messaging>
<maxMessageLength value="-1" />
</messaging>
</microsoft.web.services3>
</configuration>
Ставлю <maxMessageLength value="-1" /> и все равно файл более 4Mb передать не удается, в чем может быть дело?
Здравствуйте, <Аноним>, Вы писали:
А>Ставлю <maxMessageLength value="-1" /> и все равно файл более 4Mb передать не удается, в чем может быть дело?
<httpRuntime maxRequestLength="-1" /> ?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Здравствуйте, Lloyd, Вы писали:
L>Здравствуйте, <Аноним>, Вы писали:
А>>Ставлю <maxMessageLength value="-1" /> и все равно файл более 4Mb передать не удается, в чем может быть дело?
L><httpRuntime maxRequestLength="-1" /> ?
Пробывал добавить эту опцию в <configuration><system.web> <httpRuntime maxRequestLength="-1" /> но сервис не запускается с такими параметром говорит что не правильно сконфигурирован. А при попытке задать предел в 10MB все равно не могу передать файл с размером более 4Mb
<microsoft.web.services3>
<diagnostics>
<trace enabled="true" input="InputTrace.webinfo" output="OutputTrace.webinfo"/>
</diagnostics>
<tokenIssuer>
<statefulSecurityContextToken enabled="true"/>
</tokenIssuer>
<messaging>
<mtom serverMode="optional"/>
<maxMessageLength value="1048576"/>
</messaging>
<policy fileName="wse3policyCache.config"/>
</microsoft.web.services3>
Падает с ошибкой:
The underlying connection was closed: An unexpected error occurred on a receive.
Здравствуйте, Аноним, Вы писали:
А>Otkuda dannie berete, ne iz bazi li dannih?
Локально тестирую: то есть передача файла с локального диска С:\ через WSE и сохранение его на другом локальном диске D:\
В реальности будет передача файла с одного сервера на другой, но файл не будет хранится в базе данных, в базе данных токо информация о том где он хранится...
То есть я хочу сказать что коннекшин не к базе падает а при попытке передачи большого файла с клиента на сервер через WSE.
P.S. С файлами до 4Mb все хорошо работает.
Есть идея еще резать файлы и передавать частями а на сервере собирать его с частей, но может таки можна без этого обойтись
Здравствуйте, Аноним, Вы писали:
Нито не использует эту технологию?
Укажи в веб-конфиге <httpRuntime maxRequestLength="2097151"/> и всё заработает.