2016-09-27 2 views
0

В библиотеке фреймов, которая включена во все наши проекты, имеется функция журнала.Найти имя DLL-кода, вызывающего функцию C#

В рамках

public static class Log 
{ 
    GenericLog(string msg){ string caller = GETDLLNAME //implementation} 
    GenericError(string msg){ string caller = GETDLLNAME //implementation} 
} 

В другом коде

using Framework; 

public class foo 
{ 
    public string GenerateBar() 
    { 
     Log.GenericLog("FooBar"); 
    } 
} 

Есть ли способ, чтобы определить имя DLL, откуда Log.GenericLog называется?

+0

объект исключения возвращает всю информацию, откуда генерируется ошибка. Вы можете использовать трассировку стека, чтобы показать полное описание ошибки –

+0

'Assembly.GetCallingAssembly(). CodeBase'? –

+0

Я думаю, что желаемые требования могут быть решены с помощью [Assembly Class] (https://msdn.microsoft.com/de-de/library/system.reflection.assembly.getentryassembly (v = vs.110) .aspx). Посмотрите на этот метод. –

ответ

Смежные вопросы