Announcement

Collapse
No announcement yet.

Exception dokumentieren

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Exception dokumentieren

    HI!

    Hat wer ne Ahnung, wie man sinnig unter C# Exception dokumentiert?

    Summary, Param oder Returns gehen ja sehr schön. Aber Exception?

    ich möchte, es so haben: <p>

    public int Irgendwas(int i)<br>
    {<br>
    try<br>
    {<br>
    ....<br>
    }<br>
    catch (Exception irgendwas)<br>
    usw.

    In der OnlineDoku sollte dann ne Extrabeschreibung zu der Exception zu finden sein ....

    Was muss man tun? Die Doku schweigt sich beharlich aus. Mit dem Tag <exception> passiert gar nichst.

    Chris

  • #2
    Hallo Chris,

    aus der Dokumentation kann ich entnehmen, dass der Exception-Tag für die Klasse selbst bestimmt ist und nicht für seine Verwendung:

    <pre>
    /// <exception cref="System.Exception">This is an exception class.</exception>
    class EClass : Exception
    {
    }
    </pre>

    Gruß

    Jörg Wegene

    Comment


    • #3
      Hi Jörg,<br>

      so richtig befriedigt mich das aber noch nicht. Welche Bedutung hat das denn, wenn ich mit dann die Kommentarwebseiten erzeugen lasse und keine nähe Beschreibung sehen kann? Nachwievor werden nur SUMMARY und REMARKS Tags angezeigt. Ich hatte auf einen "besseren" Hinweis gehofft auf so einer Seite .... irre ich?

      Chri

      Comment


      • #4
        Hallo Chris,

        vielleicht ein kleines Missverständnis in meiner Eile. Daher eine Gegenfrage: Möchtest du mit "Dokumentation" eine vorhandene eigene Exception-Klasse dokumentieren oder irgendwie festhalten, wenn dein Programm eine Exception wirft?

        Der allgemeine Begriff Dokumentation beschäftigt sich mit dem dokuemntieren des Quellcodes - für sich selber und andere Programmierer im Team. Sinnvollerweise werden diese Dokumentationen in XML erstellt, so dass diese später weiterverarbeitet werden können (oder beliebig formatiert ausgegeben werden können).

        Ein Beispiel:
        <pre>
        /// &lt;<b>summary</b>&gt;
        /// Diese Funktion erstellt einen formatierten String anhand eines gültigen integer-Wertes. bla bla bla
        /// &lt;/<b>summary</b>&gt;
        /// &lt;<b>param</b> name="i"&gt;Ein beliebiger integer-Value&lt;/<b>param</b>&gt;
        /// &lt;<b>returns</b>&gt;Immer einen leeren String&lt;/<b>returns</b>&gt;
        /// &lt;<b>seealso</b>&gt;
        /// &lt;<b>see</b> cref="sinnloseMethoden"&gt;
        /// &lt;/<b>seealso</b>&gt;
        public string GetValue(int i) {
        return String.Empty;
        }
        </pre>

        Oder für eine Exception:

        <pre>
        using System;
        /// &lt;<b>exception</b> cref="System.Exception"&gt;This is an exception class.&lt;/<b>exception</b>&gt;
        class EClass : Exception
        {
        }
        </pre>

        Wenn man allerdings prüfen möchte, ob ein laufendes Programm Exceptions wirft, sprechen wir von einem ganz anderen Bereich. Da gibt es verschiedene Alternativen: Das Eventlog von Windows, eine eigene Log-Datei (Text) oder sich eMails zuschicken lassen (bei wirklich schweren Ausnahmefehlen). Bei letzterer Methode sollte man allerdings aufpassen das man nicht mit Meldungen überflutet wird. Die Meldungen sollten schon gezielt gesendet werden. Ideal wäre es, wenn das Programm erkennt, dass es dich bereits über diese Exception informiert hat.

        Bis auf die Basis-Klassen für den Zugriff auf das EventLog, dem Schreiben von Text-Files und dem versenden von eMails ist mir keine fertige oder integrierte Lösung bekannt. Vielleicht gibt es hier einen Ansatz von Dritt-Anbietern. Oder natürlich selber entwicklen... denn so viel Aufwand scheints nicht zu sein. Je nach dem was machen haben möchte.

        Ich hoffe dir nun ein wenig mehr geholfen zu haben (Habe diesmal richtig viel Zeit investiert *stolz*).

        Gute Nacht,

        Jör

        Comment

        Working...
        X