我尝试将multicastattributes设置为public以排除内部和私有方法,但仍然没有运气。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using PostSharp.Aspects;
using PostSharp.Extensibility;
[assembly: test.AOP(AttributeTargetAssemblies = "mscorlib",
AttributeTargetTypes = "System.DateTime")]
namespace test
{
[Serializable]
[MulticastAttributeUsage(TargetMemberAttributes = MulticastAttributes.Public)]
class AOP : OnMethodBoundaryAspect
{
public override void OnEntry(MethodExecutionArgs args)
{
Console.WriteLine("Entry: " + args.Method.Name);
}
}
}
要对此进行测试,只需调用代码中的任何位置:
DateTime dt = DateTime.Now.Date;
我认为日期部分导致了问题。解决方案可能是排除这种情况,但未来可能会采用其他方法,所以我需要更多的"肯定"溶液
答案 0 :(得分:1)
自PostSharp 4.3.30和PostSharp 5.0.21。
以来,此错误已得到修复