2016-12-09 4 views
2

Ich bin mit dem Bloomberg API und bekomme diesen Fehler in VS. Es stürzt das Programm nicht ab, aber ich sehe die Fehler im Ausgabefenster. Ich möchte nur sicherstellen, dass die Dinge reibungslos funktionieren und ich bin besorgt, dass etwas nicht stimmt. Weiß jemand, was das ist oder wie ich mehr Details darüber erfahren kann?Ausnahme geworfen: ‚Bloomberglp.Blpapi.NotFoundException‘ in Bloomberglp.Blpapi.dll

   switch (eventObj.Type) 
       { 
        case Event.EventType.SUBSCRIPTION_DATA: 
         Debug.WriteLine(""); 
         Debug.WriteLine("hit subscription DATA"); 
         foreach (Message msg in eventObj.GetMessages()) 
         { 
         } 
       } 

diese Fehler Ausnahme ausgelöst: 'System.IO.IOException' in Bloomberglp.Blpapi.dll wird in meinem Code auf die foreach-Nachricht erzeugt. Wie kann ich Details dazu sehen, damit ich das Problem beheben kann?

error picture

+0

Haben Sie HELP HELP gefragt? – assylias

+0

HELP HELP sagte mir ... "Dieser Fehler ist, weil Sie nach einem Element suchen, das nicht in der Antwort vorhanden ist". Wie kann ich VS dazu bringen, mir mehr Details über den Fehler zu geben? ab sofort pausiert VS nicht bei diesem Fehler ... es überspringt einfach mit der Ausgabenachricht und setzt fort – solarissf

+0

haben Sie versucht, Schritt für Schritt den Teil Ihres Codes zu debuggen, der die Antwort analysiert, die von der Bloomberg API empfangen wurde? Es sollte irgendwo ein Code sein, der versucht, die Elemente der Antwort zu erhalten, und je nachdem, was der Helpdesk Ihnen gesagt hat, versuchen Sie, ein Element abzurufen, das nicht existiert. – assylias

Antwort

1

ich die Informationen aus dem umfangreichen Kommentar Diskussion für zukünftige Leser zusammenfasst:

Vergewissern Sie sich, nur Nachrichten von Ereignissen iterieren, die SUBSCRIPTION_DATA vom Typ sind, sollten Sie Ihren Code ändern die Art des Ereignisses zu überprüfen, bevor es Handhabung:

Event eventObj = session.NextEvent(); 
switch (eventObj.Type) 
{ 
    case Event.EventType.SUBSCRIPTION_DATA: 
     foreach (Message msg in eventObj.GetMessages()) 
     { ... } 
     break; 
    default: 
     HandleOtherEvent(eventObj); 
     break; 
} 

um VS auf jede Ausnahme in jedem Thread zu stoppen, überprüfen sie alles in „Exception-Einstellungen“ (ctrl + alt + E)

Sie ein Abonnement Veranstaltung mit einem Abonnement-ID mit der Korrelation korrelieren kann. Überprüfen Sie, welche Korrelations-ID das Ereignis hat, wenn VS bei einer Ausnahmebedingung anhält, dann ermitteln Sie, auf welche Sicherheit sich das Abonnement bezieht, erstellen Sie einen Stichprobentest und diskutieren Sie mit Bloombergs HILFE-HILFE.

Per Kommentare unten hat OP mit HELP diskutiert, die ihm/ihr gesagt, dass dies ein Problem ist, Bloomberg, die in der neuesten API-Bibliothek aufgelöst wurde. Durch die Installation der neuesten Bibliothek wurde das Problem behoben.

+0

nach Ihrem Vorschlag habe ich meinen Code oben geändert ... nach dem Test tritt der Fehler nur in .SUBSCRIPTION_DATA ... bald als seine Treffer das für/jedes. Ich sende ungefähr 500 Märkte in der Subskription, und aufgrund des Fehlers hat es ein Problem mit ungefähr 30 der Märkte. – solarissf

+0

Versuchen Sie VS dazu zu bringen, diesen Fehler zu stoppen, indem Sie ctrl-alt-E ausführen und alles überprüfen. Können Sie die Ausnahmedetails hier einfügen? – ytoledano

+0

Ausnahmeeinstellungen – ytoledano

Verwandte Themen