2014-08-07 4 views
0

У меня есть служба WCF, с которой я подключаюсь. Он отлично работает с моей локальной машины при тестировании. Также отлично работает на одном тестовом месте, работающем под управлением Windows Server 2008.Служба WCF получает сообщение об ошибке MessageContract на сервере 2003, а не в других местах

один из наших производственных машин под управлением Windows Server 2003, и я получаю сообщение об ошибке:

The operation 'theOperation' could not be loaded because it has a parameter or return type of type System.ServiceModel.Channels.Message or a type that has MessageContractAttribute and other parameters of different types. When using System.ServiceModel.Channels.Message or types with MessageContractAttribute, the method must not use any other types of parameters. 

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

Редактировать: Я использую .net 4.0

+0

Какую версию .NET вы используете? Вы спрашиваете, есть ли что-то о сервере 2003 - есть - он не поддерживается Microsoft! –

+0

@JohnSaunders Asp .net 4.0. Это не поддерживается на сервере 2003 или что-то еще? Другая часть этой работы прекрасно подходит для ссылок 4.0 – user2300846

+0

Должен работать на Windows Server 2003 с пакетом обновления 2 (SP2). См. Http://www.microsoft.com/en-us/download/details.aspx?id=17851. –

ответ

0

2003? Какие рамки вы используете?

Я не знаком с этой ошибкой, но вы можете включить ведение журнала в своей службе, добавив следующий раздел в свой app.config на свой сервис (я предоставляю вам не принимать в IIS).

<system.diagnostics> 
    <sources> 
     <source name="System.ServiceModel" 
       switchValue="Information, ActivityTracing" 
       propagateActivity="true" > 
     <listeners> 
      <add name="xml"/> 
     </listeners> 
     </source> 
     <source name="System.ServiceModel.MessageLogging"> 
     <listeners> 
      <add name="xml"/> 
     </listeners> 
     </source> 
     <source name="myUserTraceSource" 
       switchValue="Information, ActivityTracing"> 
     <listeners> 
      <add name="xml"/> 
     </listeners> 
     </source> 
    </sources> 
    <sharedListeners> 
     <add name="xml" 
      type="System.Diagnostics.XmlWriterTraceListener" 
      initializeData="c:\locationofourlogfile\wcf.svclog" /> 
    </sharedListeners> 
</system.diagnostics> 

Это будет войти в место, предусмотренного в конфигурации, вы можете открыть этот файл в SvcUtil, и, возможно, получить некоторые мудрее. SvcUtil находится в папке winsdk.

Надеюсь, это поможет.

+0

Это просто показывает мне ту же ошибку, что и на самой странице, насколько я могу судить. Полезно, когда его запуск автоматизирован, но не так много на данный момент. – user2300846

 Смежные вопросы

  • Нет связанных вопросов^_^