0

実行時にアセンブリの場所を返す方法を探しています。Assembly.Location は使用できません。NUnit で実行すると、シャドウ コピーされたアセンブリのパスが返されるためです。

4

1 に答える 1

3

代わりに CodeBase プロパティを使用してください。シャドウ コピーされた dll の場所ではなく、元の dll の場所が返されます。

例えば:

Assembly assembly = GetType().Assembly;    
Uri codeBaseUri = new Uri(assembly.CodeBase);
string path = codeBaseUri.LocalPath;
于 2013-04-08T20:15:46.457 に答える