Парзинг стека приводит к тому, что вызываемый код начинает зависеть от вызывающего - если нужно будет второе место, из которого надо, определить то же поведение, придется в вызываемую функцию добавлять дополнительную логику.
И disposable context и парзинг стека не позволяет распознать ситуацию, когда чужой код вдруг стал вызывать ту же функцию на каком-то промежуточном уровне еще раз ожидая прежнего поведения.
Еще не знаю как Dyn365FO, а в Ax2012, ЕМНИП, xppCallstack не работал из IL - и там пришлось бы пользоваться System.Environmen::get_Stacktrace()
Последний раз редактировалось belugin; 07.01.2020 в 15:56.
|