Ich möchte eine .net-Kernbibliothek erstellen, die plattformspezifischen Code für win32- und osx-Aufrufe hat, und wenn ich die Bibliothek für jedes Ziel os kompiliere, möchte ich einbeziehen der korrekte Betriebssystemcodedot net core build platform/os spezifischer Code oder Klassendateien
Ich habe mir die Corefx und viele Dokumente angesehen und nach vielem Googeln ist die einzige Möglichkeit, die OS-Erkennung zur Laufzeit durchzuführen, aber das ist sowohl ineffizient als auch mühsam. Im Falle von Corefx haben sie ein komplexes Build-System, das plattformspezifische Dateien automatisch zu ziehen scheint, aber auf Msbuild und mehr angewiesen ist. Fehle ich etwas?
Wie kann ich Zielcode bedingt für ein O entweder auf Dateiebene oder Code-Ebene, wie:
#if osx
// come code
#endif
Oder wie pro golangs Art und Weise, indem Sie den o Namen im Dateinamen wie MyClass setzen. osx.cs für osx-code und MyClass.cs für nicht-plattform-stuff und der build-prozess benötigt die richtigen dateien selbst.
Ich verwende Visual Studio-Code und project.json.
(Ich denke, in Visual Studio ich jede Plattform Ziel definieren könnte und sind meine eigene definiert, aber ich bin auf osx)
Vielen Dank im Voraus.
th Ich war genau das, wonach ich suchte. Vielen Dank. Als ich die Frage ursprünglich gestellt habe, existierten die Dokumente, die du verlinkt hast, nicht. – Damien