Ошибка EWS при запуске из WCF - PullRequest
1 голос
/ 20 февраля 2012

Я пытаюсь получить доступ к своей электронной почте с помощью EWS. Он отлично работает из консольного приложения. Но когда я пытаюсь получить доступ к тому же коду с помощью службы WCF, это выдает мне ошибку:

При отправке запроса в качестве учетной записи, у которой нет почтового ящика, необходимо указать основной SMTP-адрес почтового ящика для любых идентификаторов папок

Вот мой код:

        ExchangeService service = new ExchangeService();
        service.Credentials = new WebCredentials("username", "password");
        service.TraceEnabled = true;
        service.AutodiscoverUrl("emailID");

        FindItemsResults<Item> findResults = service.FindItems(
        WellKnownFolderName.Inbox,
        new ItemView(10));

Любая помощь будет принята с благодарностью

Редактировать 1: я вызываю эту службу WCF из приложения WP7, и здесь указан параметр ServiceReferences.ClientConfig

    <system.serviceModel>
    <bindings>
        <basicHttpBinding>
            <binding name="BasicHttpBinding_ITestService" maxBufferSize="2147483647"
                maxReceivedMessageSize="2147483647">
                <security mode="None" />
            </binding>
        </basicHttpBinding>
    </bindings>
    <client>
        <endpoint address="http://MachineIP/Service1.svc" binding="basicHttpBinding"
            bindingConfiguration="BasicHttpBinding_ITestService" contract="ServiceReference1.ITestService"
            name="BasicHttpBinding_ITestService" />
    </client>
</system.serviceModel>

1 Ответ

2 голосов
/ 20 февраля 2012

В моем сервисном методе я отключаю Олицетворение, и оно исправлено

[OperationBehavior(Impersonation = ImpersonationOption.NotAllowed)]

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