2016-08-03 19 views
8

Ich versuche, das Vision API-Projekt sample auszuführen. Ich kopierte im Grunde genommen den Code Program.cs in meine Anwendung und führte ihn aus.AggregateException beim Aufruf von GetApplicationDefaultAsync()

Diese Linie (die Linie ist # 36- # 37 in Program.cs)

GoogleCredential credential = GoogleCredential.GetApplicationDefaultAsync().Result; 

wirft ein System.AggregateException in mscorlib.dll mit Additional information: One or more errors occurred..

Bei der Überprüfung InnerException fand ich heraus, dass die tatsächliche Ausnahme InvalidOperationException mit Error deserializing JSON credential data. geworfen wird.

Nichtsdestoweniger ist mein Cloud-Projekt ein Basisprojekt, mit einem Dienstkonto und Cloud Vision API aktiviert, sonst nichts. Ich überprüfte, dass meine Umgebungsvariable auf die JSON-Datei gesetzt wurde, indem ich schrieb:

Console.WriteLine(Environment.GetEnvironmentVariable("GOOGLE_APPLICATION_CREDENTIALS")); 

vor der Zeile oben. Der Ausgang davon (kurz vor dem Absturz) ist (so etwas wie):

C:\Users\me\Documents\Projects\MyProject\MyProject-ba31aae6efa1.json

ich die Datei überprüft, und es ist die Datei, die ich habe, wenn ich mein Dienstkonto aktiviert. Jede Eigenschaft in ihr sieht gut aus (d. H. Projektname ist korrekt, Pfad ist korrekt, ...).

Ich habe das Google Cloud SDK installiert und gcloud beta auth application-default login ausgeführt und den Zugriff auf mein Cloud-Konto autorisiert.

Irgendwelche Ideen zu was könnte das verursachen?

+0

Wenn Sie weitere Informationen benötigen, kommentieren Sie bitte. – Rakete1111

+0

Anstatt zu erraten, erweitern Sie die'AggregateException' und sehen Sie sich [InnerExceptions] an (https://msdn.microsoft.com/en-us/library/system.aggregateexception.innexceptions (v = vs.110) .aspx) Eigentum. –

+0

@IvanStoev Danke, das wusste ich nicht. – Rakete1111

Antwort

5

Durch die Untersuchung der detaillierten Build-Protokoll, fand ich heraus, dass die Pakete für die Google APIs eine Version 9.0.1 (die neueste zum Zeitpunkt der Erstellung dieses Artikels) hatte.

Aus welchem ​​Grund auch immer, die Google APIs Pakete haben eine Abhängigkeit 7.0.0 auf Newtonsoft.Json Version (die zusammen mit ihnen installiert ist).

Die Pakete wurden mit der falschen Version geliefert!

Die Installation der neuesten Version (in diesem Fall 9.0.1) behebt das Problem.

+0

yep, das war es .. Vielen Dank – curiousBoy

+0

Danke! Das hat mein Problem behoben. –

Verwandte Themen