Я выполняю код веб-службы на своем компьютере вместе с кодом клиента. Он работал нормально и смог получить вложения Dime, отправленные клиенту из веб-службы.
Веб-сервис использует вложения WSE 2.0 и Dime. Код клиента находится на том же компьютере, который вызывает веб-сервис.
Однако, когда я собираюсь развернуть его на Windows 2003 R2 Server, в строке ResponseSoapContext.Current.add (dimeAttachment) произошел сбой из-за того, что объект ResponseSoapContext.Current имеет значение null.
Код клиента сумел вызвать веб-сервис, как я вижу в журналах, что он пытается что-то сделать.
Будет ли брандмауэр, останавливающий код клиента, получающий вложение Dime от веб-службы? Или есть настройки, которые мне не хватает? Вот код:
DimeAttachment dimeAttach = new DimeAttachment(
"application/octet-stream", TypeFormat.MediaType,
streamObj);
if (ResponseSoapContext.Current != null)
{
ResponseSoapContext.Current.Attachments.Add(dimeAttach);
}
else
{
throw new Exception("The ResponseSoapContext.Current object is null");
}