IInvocation
Encapsulates an invocation of a proxied method.
using System;
using System.Reflection;
using System.Runtime.CompilerServices;
namespace Castle.DynamicProxy
{
[System.Runtime.CompilerServices.NullableContext(2)]
public interface IInvocation
{
[System.Runtime.CompilerServices.Nullable(new byte[] {
1,
2
})]
object[] Arguments {
[return: System.Runtime.CompilerServices.Nullable(new byte[] {
1,
2
})]
get;
}
[System.Runtime.CompilerServices.Nullable(new byte[] {
2,
1
})]
Type[] GenericArguments {
[return: System.Runtime.CompilerServices.Nullable(new byte[] {
2,
1
})]
get;
}
object InvocationTarget { get; }
[System.Runtime.CompilerServices.Nullable(1)]
MethodInfo Method {
[System.Runtime.CompilerServices.NullableContext(1)]
get;
}
MethodInfo MethodInvocationTarget { get; }
[System.Runtime.CompilerServices.Nullable(1)]
object Proxy {
[System.Runtime.CompilerServices.NullableContext(1)]
get;
}
object ReturnValue { get; set; }
Type TargetType { get; }
object GetArgumentValue(int index);
[System.Runtime.CompilerServices.NullableContext(1)]
MethodInfo GetConcreteMethod();
MethodInfo GetConcreteMethodInvocationTarget();
void Proceed();
[System.Runtime.CompilerServices.NullableContext(1)]
IInvocationProceedInfo CaptureProceedInfo();
void SetArgumentValue(int index, object value);
}
}