Я столкнулся со странным поведением, пытаясь получить родительскую сборку в каком-то классе ведения журнала (только когда он скомпилирован в режиме Release ).
In Debug режим работает как шарм:
StackFrame[] frames = new StackTrace().GetFrames();
var assemblies = (from f in frames
select f.GetMethod().ReflectedType.Assembly)
Distinct()
.Last();
Пример: сборка A => сборка B => метод
когда я запускаю указанный выше сценарий в режиме отладки, я получаю сборку A (как и ожидалось), но когда он запускается в режиме выпуска, я получаю: mscorlib вместо этого. но самое странное, что при проверке всего стека сборок нет ни одной ссылки на сборку A . как это возможно? что может происходить?
PS: сборка A - это проект webapp.