Есть ли способ в .NET знать, какие параметры и их значения были переданы методу. Способ отражения? Это будет использоваться внутри метода. Он должен быть общим, поэтому его можно использовать любым способом. Это для целей ведения журнала.
Получить имена параметров метода и значения изнутри метода
Ответ 1
MethodInfo.GetCurrentMethod()
предоставит вам информацию о текущем методе, а затем получите информацию о параметрах с помощью GetParameters()
.
Ответ 2
Вызов MethodBase.GetCurrentMethod().GetParameters()
.
Однако невозможно получить значения параметров; из-за оптимизации JIT, они могут даже не существовать.
Ответ 3
То, что вы пытаетесь сделать, может быть легко достигнуто с помощью аспектно-ориентированного программирования. В Интернете есть хорошие учебники, я укажу два из них:
Ответ 4
Вам нужно АОП, чтобы достичь того, что вы ищете. в С# вы можете использовать DispatchProxy, чтобы сделать это. Проверьте следующее Как обернуть существующий экземпляр объекта в DispatchProxy?