I've followed the examples that come with postsharp 1.5 .. And I've a two simple projects:
One has an aspect like this:
[Serializable]
public class MyAspectAttribute : OnMethodBoundaryAspect
{
public override void OnEntry(MethodExecutionEventArgs eventArgs)
{
Console.WriteLine(eventArgs.Method.Name);
base.OnEntry(eventArgs);
}
}
In the other project I've a test case like this:
public class Test
{
[MyAspect]
public void DoSomething()
{
Console.Write("aa");
}
}
In the same project of "test", I've the following test fixture:
[TestFixture]
public class TestFixture
{
[Test]
public void TestDoSomething()
{
var a = new Test();
a.DoSomething();
}}
The code wont compile because a postsharp exception:
Error 2 Unhandled exception: System.InvalidCastException: Unable to cast object of type 'PostSharp.CodeModel.TypeDefDeclaration' to type 'PostSharp.CodeModel.IMethod'. at PostSharp.Laos.Weaver.MethodLevelAspectWeaver.get_TargetMethod() at PostSharp.Laos.Weaver.MethodLevelAspectWeaver.Initialize() at PostSharp.Laos.Weaver.OnMethodBoundaryAspectWeaver.Initialize() at PostSharp.Laos.Weaver.LaosTask.Execute() at PostSharp.Extensibility.Project.ExecutePhase(String phase) at PostSharp.Extensibility.Project.Execute() at PostSharp.Extensibility.PostSharpObject.ExecuteProjects() at PostSharp.Extensibility.PostSharpObject.InvokeProject(ProjectInvocation projectInvocation) at PostSharp.MSBuild.PostSharpRemoteTask.Execute(PostSharpTaskParameters parameters, TaskLoggingHelper log) MyExample.Tests
Thank you in advance.