Kā es varu uzzināt asamblejas, kurā atrodas kods, ceļu?
Vai ir veids, kā iegūt asamblejas, kurā atrodas pašreizējais kods, ceļu? Es nevēlos saņemt izsaucošās asamblejas ceļu, bet tikai to, kurā atrodas kods.
Būtībā manam vienības testam ir jālasa daži xml testa faili, kas atrodas attiecībā pret dll. Es gribu, lai ceļš vienmēr būtu pareizi atrisināts neatkarīgi no tā, vai testēšanas dll tiek palaista no TestDriven.NET, MbUnit GUI vai kā citādi.
Edit: Cilvēki, šķiet, nesaprot, ko es jautāju.
Mana testēšanas bibliotēka atrodas, teiksim
C:\projects\myapplication\daotests\bin\Debug\daotests.dll
un es gribētu iegūt šo ceļu:
C:\projects\myapplication\daotests\bin\Debug\
Trīs līdzšinējie ieteikumi man neizdodas, kad es palaidu no MbUnit Gui:
-
Environment.CurrentDirectory
sniedz c:\Programmu datnes\MbUnit -
System.Reflection.Assembly.GetAssembly(typeof(DaoTests)).Location
dod C:\Documents un Settings\george\Local Settings\Temp\ ....\DaoTests.dll -
System.Reflection.Assembly.GetExecutingAssembly().Location
sniedz to pašu, ko iepriekšējais.
Vai tas palīdz?
Tam vajadzētu darboties, ja vien montāža nav tēnā kopēta:
Pašreizējais direktorijs, kurā jūs eksistējat.
Ja kopējat .xml failu kopā ar build, jums vajadzētu to atrast.
vai