ODataDataProvider und Proxy-Einstellungen im Betriebssystem

Problem

Wenn Sie den ODataDataProvider auf einem System mit individuellen Proxy-Einstellungen betreiben kann es sein, dass Sie eine Fehlermeldung der folgenden Art erhalten:
Der Remoteserver hat einen Fehler zurückgegeben: (407) Proxyauthentifizierung notwendig

Hintergrund ist, dass für die Abfragen zwar der richtige Proxyserver verwendet wird, in den Standardeinstellungen vom .NET Framework aber nicht die Standard-Credentials verwendet werden. Dadurch ist die Abfrage über den Proxyserver nicht möglich, weil diese nicht korrekt authentifiziert ist.

Lösung

Als Lösung bieten sich zwei Alternativen an, zum einen können Sie in der app.config folgenden Eintrag hinzufügen:

<system.net>
  <defaultProxy useDefaultCredentials="true" />
</system.net>

Alternativ können Sie die Einstellung auch in Ihrem Code vornehmen, indem Sie vor dem ODataDataProvider-Konstruktor folgenden Aufruf absetzen:

WebRequest.DefaultWebProxy.Credentials = CredentialCache.DefaultNetworkCredentials;

Weitere Hinweise finden Sie auch hier auf StackOverflow.