Ich habe vor kurzem die Notwendigkeit gefunden zu überprüfen Kompilierzeit, ob entweder: a) eine bestimmte Assembly-Referenz existiert und erfolgreich gelöst werden kann, oder b) Eine bestimmte Klasse (deren voll qualifizierter Name bekannt ist) ist definiert. Diese beiden Situationen sind für meine Zwecke gleichwertig, also wäre es gut genug, nach einem von ihnen zu suchen. Gibt es eine Möglichkeit, dies in .NET/C# zu tun? Präprozessordirektiven erschienen mir zunächst als etwas, das helfen könnte, aber es scheint, dass es nicht die notwendige Fähigkeit hat.Überprüfung auf die Existenz eines Verweises/Typs zum Zeitpunkt der Kompilierung in .NET
Natürlich kann die Überprüfung der Existenz eines Typs zur Laufzeit leicht genug durchgeführt werden, aber das wird mein Problem in dieser Situation leider nicht lösen. (Ich muss in der Lage sein, die Tatsache zu ignorieren, dass eine bestimmte Referenz fehlt und somit auf einen anderen Ansatz im Code zurückgreift.)
Ja. Leider muss es zur Kompilierzeit sein, sonst wird der Compiler versuchen, diese Zeit zu kompilieren und zu sehen, dass sie fehlt. Natürlich könnte ich meinen eigenen Typ mit der gleichen Struktur/Signatur definieren, aber das scheint mir sehr hack zu sein. – Noldorin