Exchange Web Services: UseDefaultCredentials Eigenschaft
Dieser Microsoft-Seite zeigt, dass durch die Einstellung der Eigenschaft auf "true" UseDefaultCredentials, kein login-name und Passwort sind erforderlich, um die Kommunikation mit dem Exchange-server. Das ist aber nicht meine Erfahrung.
Mein code erstellt eine Instanz der ExchangeService service:
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010);
Wenn ich manuell die Anmeldeinformationen wie folgt, klappt alles wunderbar:
service.Credentials = new WebCredentials("[email protected]", "my password");
Allerdings, wenn ich entfernen Sie diese Zeile und ersetzen Sie es mit dem folgenden, mein code funktioniert nicht:
service.UseDefaultCredentials = true;
Ich habe gesucht und gesucht nach Lösungen aber ich bin nicht etwas zu finden, konkrete. Wenn das hier jemand könnte mir bitte helfen wäre ich sehr dankbar.
BEARBEITEN:
Ich habe versucht, meine eigenen Anmeldeinformationen anstelle der Standardmäßigen Anmeldeinformationen.
string smtpaddress = "[email protected]";
es.Url = new Uri("https://outlook.office365.com/EWS/Exchange.asmx");
es.Credentials = new WebCredentials("myemail", "mypassword");
es.AutodiscoverUrl(smtpaddress, RedirectionCallback);
FolderId SharedMailbox = new FolderId(WellKnownFolderName.Inbox, "[email protected]");
Folder sharedInbox = Folder.Bind(es, SharedMailbox);
In diesem Punkt kann ich überprüfen sharedInbox mit den Informationen im Posteingang. Ich kann sehen, dass die ungelesenen E-Mail-Graf und anderen.
Aber wenn ich auf
ItemView itemView = new ItemView(100);
FindItemsResults<Item> findResults1 = es.FindItems(pqInbox.Id, itemView);
Bekomme ich exception "SMTP-Adresse muss keine mailbox zugeordnet"
Du musst angemeldet sein, um einen Kommentar abzugeben.
meine Erfahrung in diesem Fall ist, dass man wenn man service.UseDefaultCredentials = true Ihre Anmeldung von Ihrem pc ergriffen werden. Das funktioniert perfekt, wenn Ihr in der gleichen Active-Directory-Struktur wie der exchangeserver ist. Wenn Ihr versucht, eine Verbindung mit dem exchange server von außerhalb der ANZEIGEN, die Sie haben zu setzen Sie die Anmeldeinformationen manuell.
Ich bin mit defaultcredentials für mein Werkzeug, wenn ich auf der Arbeit bin. Wenn ich eine Verbindung von zu Hause habe ich zum festlegen der Anmeldeinformationen.
Hoffe, das hilft dir...
Aus der MSDN-Dokumentation, UseDefaultCredentials ignoriert, die in Exchange Online. Sie müssen geben Sie die Anmeldeinformationen für Exchange Online.
http://msdn.microsoft.com/en-us/library/office/microsoft.exchange.webservices.data.exchangeservicebase.usedefaultcredentials(v=exchg.80).aspx