942 Stimmen

Wie erhalte ich den Pfad der Assembly, in der sich der Code befindet?

Gibt es eine Möglichkeit, den Pfad für die Baugruppe zu ermitteln, in der sich der aktuelle Code befindet? Ich möchte nicht den Pfad der aufrufenden Assembly, sondern nur den Pfad der Assembly, die den Code enthält.

Grundsätzlich muss mein Unit-Test einige Xml-Testdateien lesen, die relativ zu der Dll befinden. Ich möchte, dass der Pfad immer korrekt aufgelöst wird, unabhängig davon, ob die Test-DLL von TestDriven.NET, der MbUnit-GUI oder etwas anderes ausgeführt wird.

Editar : Die Leute scheinen meine Frage falsch zu verstehen.

Meine Testbibliothek befindet sich in say

C:\projects\myapplication\daotests\bin\Debug\daotests.dll

und ich würde gerne diesen Weg einschlagen:

C:\projects\myapplication\daotests\bin\Debug\

Die drei Vorschläge bisher scheitern, wenn ich von der MbUnit Gui ausführen:

  • Environment.CurrentDirectory gibt c: \Program Dateien \MbUnit

  • System.Reflection.Assembly.GetAssembly(typeof(DaoTests)).Location gibt C:\Documents und Einstellungen \george\Local Einstellungen \Temp\ .... \DaoTests.dll

  • System.Reflection.Assembly.GetExecutingAssembly().Location ergibt das Gleiche wie das vorherige.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X