Я хочу предоставить реализацию System.Object.ToString для различных классов с помощью PostSharp. Я создал аспект, наследующий от MethodInterceptionAspect, но метод OnInvoke не вызывается, когда происходит вызов EchoDto.ToString.
Как я могу вызвать OnInvoke при вызове ToString?
[DataContract]
[ImplementJsonToStringAspect()]
public class EchoDto
{
[DataMember]
public string Text { get; set; }
}
[Serializable]
[MulticastAttributeUsage(MulticastTargets.Method)]
public class ImplementJsonToStringAspect : MethodInterceptionAspect
{
public override void OnInvoke(MethodInterceptionArgs args)
{
base.OnInvoke(args); // Never gets called
}
public override bool CompileTimeValidate(MethodBase method)
{
return method.Name == "ToString";
}
}