public void Intercept(IInvocation invocation) { if (invocation.CallerMethod.Name.StartsWith("add_")) { IsAdd = true; _myEvent += invocation.GetParameter <EventHandler>(0); } else { IsRemove = true; _myEvent -= invocation.GetParameter <EventHandler>(0); } }
public void Intercept(IInvocation invocation) { var value = invocation.GetParameter <string>(0); if (value == "A") { invocation.Parameters[0] = "B"; } invocation.Proceed(); }
public void Intercept(IInvocation invocation) { if (invocation.CallerMethod.Name.StartsWith("set_")) { _title = invocation.GetParameter <string>(0); } else { invocation.ReturnValue = _title; } }