Wie kann man wissen, wann / welche Ausnahmen von System.Data.Sqlite-Objekten ausgelöst werden?

9

Ich habe Probleme, herauszufinden, für die Sqlite.Net Datenanbieter (System.Data.Sqlite.dll) (neu Entwicklung hat hier gegabelt, welche Ausnahmen von den verschiedenen Klassen und deren Methoden ausgelöst werden. Ich weiß, dass es SqliteExceptions gibt, die ausgelöst werden können, aber wann?

Ich habe sichergestellt, dass ich die begleitende System.Data.Sqlite.xml-Dokumentationsdatei habe, aber es scheint nicht aufzulisten, welche Ausnahmen von jeder Methode ausgelöst werden.

Ich möchte nicht unnötigen Code in try / catch-Blöcke einbinden (oder blind überall eine generische Exception abfangen).

Ich weiß, dass SqliteConnection von abgeleitet ist DbConnection und SqliteCommand wird abgeleitet von DbCommand , also wenn nötig, kann ich mir die Dokumentation dort anschauen. Keiner der Basisklassen wird jedoch SqliteException auflisten. Wann also werden diese Ausnahmen ausgelöst?

PS - Ich benutze Version 1.0.64 (von 2009 ... kann zu diesem Zeitpunkt nicht upgraden).

UPDATE:

Gibt es jemanden da draußen, der System.Data.Sqlite.dll verwendet, aufgrund der fehlenden Antworten? Wenn ja, wie gehen Sie vor, um Ausnahmen zu behandeln, die von den in der Bibliothek verfügbaren Objekten ausgelöst werden? Gibt es eine Standardmethode, um mit diesen Ausnahmen umzugehen, da es anscheinend keine Dokumentation über die ausgelösten Ausnahmen und die Klassen gibt?

UPDATE 2:

Ich habe es geschafft, die SQLite.NET-Dokumentation zu finden, die unter c: \ program files \ SQLite.NET \ Doc \ zu finden ist (scheint irgendwie offensichtlich zu sein). Großartige Dokumentation bisher, aber es sagt Ihnen nicht, welche Ausnahmen ausgelöst werden. Das Beste, was ich bisher tun kann, ist, die Basisklassen zu betrachten, die vererbt werden, oder Schnittstellen, die implementiert werden, und zu sehen, welche Ausnahmen ausgelöst werden. Dies hilft jedoch nicht dabei zu wissen, wann ein SqliteException-Objekt ausgelöst wird.

UPDATE 3:

Nach dem Zugriff auf den Quellcode scheint es, dass keine der Klassen selbst /// <exception cref="ExceptionType">Something went wrong!</exception> xml-Kommentare enthält. Dies erklärt, warum in der SQLite.NET-Hilfedatei oder in Visual Studio Intellisense keine Ausnahmen aufgelistet sind, die möglicherweise ausgelöst werden. Ich habe ein Ticket erstellt, in dem die XML-Kommentare angefordert werden, um die Ausnahmen einzubeziehen und sie selbst hinzuzufügen wenn es auf ihrer Prioritätenliste zu niedrig ist. Ich werde diese Frage für alle, die daran interessiert sind, auf dem neuesten Stand halten.

    
Jason Down 22.06.2011, 18:32
quelle

1 Antwort

4

Sie könnten den "rohen" Weg verwenden, um nach Code oder nach Reflektor für Exception zu suchen.

Es: Reflektor - & gt; analysieren "System.Data.SQLite.SQLiteException" - & gt; Instanziiert von

%Vor%     
giammin 18.11.2011 16:33
quelle