Ich schreibe viel Code in C# und verwende überall XML-Kommentare, um zu beschreiben, wie sich meine Methoden, Mitglieder und Eigenschaften verhalten.
Letztendlich möchte ich alle aus diesen Kommentaren gesammelten Informationen (zusammen mit den Methoden, Mitgliedern und Eigenschaftsnamen) zusammenstellen und ein schönes/lesbares Dokument generieren, das meine API beschreibt.
Ich weiß, dass es bereits einige Software gibt, die ähnliche Dinge tut, wie SandCastle Help-Builder. Ich möchte mich jedoch von der Verwendung von SandCastle und den Windows-Hilfedateien im Allgemeinen fernhalten.
Ich möchte eigentlich mein Dokument als PDF generieren, wenn das möglich ist.
Gibt es eine kostenlose/Open-Source-Software, mit der ich alle meine XML-Kommentare in ein schönes PDF-Dokument umwandeln kann?
Wir haben unsere eigenen Tools, die dies tun, und es ist ziemlich komplex, aber es zeigt, dass es möglich ist. Wir machen mehr Java als C#, und natürlich sind wir ein XSLT-Shop, so dass wahrscheinlich alles unseren Ansatz färbt. Wir nehmen die apidoc.xml-Ausgabe des C#-Compilers als eine Eingabe, eine andere XML-Datei, die durch grobes Parsen des C#-Quellcodes erzeugt wurde, als zweite Eingabe und führen diese dann (unter Verwendung von XSLT) zu einer XML-Datei in einem Format zusammen, das ist kompatibel mit der Dokumentation unserer Java-APIs, die mit javadoc und jeldoclet erstellt wurden, kombinieren Sie dies mit den Java-APIs und verwandeln Sie das Ergebnis dann in eine bestimmte Variante von HTML5, die mit dem Rest unserer Dokumentation kompatibel ist, wiederum unter Verwendung von XSLT. Wir produzieren heutzutage keine PDF-Dateien, aber wir haben dies in der Vergangenheit mit XSL-FO getan.
Dies ist natürlich ein hausinternes Werkzeug und es ist nicht produktiv genug, um von anderen verwendet zu werden, aber ich dachte, ich würde es einfach beschreiben, damit Sie (a) Beweise dafür haben, dass es getan werden kann, und (b) ein Maß dafür haben Komplexität.
Wir waren generell überrascht, wie schlecht das Tooling dafür in der .NET-Welt im Vergleich zum Java-Pendant ist. Vielleicht haben sich die Dinge geändert, seit wir das alles gebaut haben, ich habe in letzter Zeit nicht nachgesehen.
OR-Mapper
Albert
Schnüffler
Albert
Schnüffler