C# 在PostSharp 3.0中打破iSpectProvider的变化?
今天我升级到了PostSharp 3。在我的项目中引用了正确的DLL之后,我进行了编译,一切看起来都很好,直到我得到一个运行时异常。一个在PostSharp 2.1中工作得非常好的方面现在表现不同了 它是在C# 在PostSharp 3.0中打破iSpectProvider的变化?,c#,postsharp,aop,C#,Postsharp,Aop,今天我升级到了PostSharp 3。在我的项目中引用了正确的DLL之后,我进行了编译,一切看起来都很好,直到我得到一个运行时异常。一个在PostSharp 2.1中工作得非常好的方面现在表现不同了 它是在IAspectProvider的帮助下应用的通用方面。完整来源 我原来是新版本中的一个bug 在修复程序发布之前,我暂时通过引入非泛型成员并在运行时更多地依赖反射来解决它 [IntroduceMember( Visibility = Visibility.Private )] //publi
IAspectProvider
的帮助下应用的通用方面。完整来源
我原来是新版本中的一个bug
在修复程序发布之前,我暂时通过引入非泛型成员并在运行时更多地依赖反射来解决它
[IntroduceMember( Visibility = Visibility.Private )]
//public CommandFactory<TCommands> CommandFactory
public object CommandFactory
{
get { return _commandFactory; }
private set { _commandFactory = value; }
}
但是,由于创建了正确的泛型方面,我可以在运行时转换为正确的类型。一切正常。。。代码变得更加混乱(可能由于更多地依赖反射而变得更慢)
[NonSerialized]
private ViewModelAspect<Laevo.ViewModel.Main.Binding.Properties, Laevo.ViewModel.Main.Binding.Commands> \u003C\u003Ez__aspect35;
private CommandFactory<Laevo.ViewModel.ActivityOverview.Binding.Commands> CommandFactory
{
get
{
return ((ViewModelAspect<Laevo.ViewModel.ActivityOverview.Binding.Properties, Laevo.ViewModel.ActivityOverview.Binding.Commands>) this.\u003C\u003Ez__aspect35).CommandFactory;
}
}
[IntroduceMember( Visibility = Visibility.Private )]
//public CommandFactory<TCommands> CommandFactory
public object CommandFactory
{
get { return _commandFactory; }
private set { _commandFactory = value; }
}
private object CommandFactory
{
get
{
return ((ViewModelAspect<Laevo.ViewModel.ActivityOverview.Binding.Properties, Laevo.ViewModel.ActivityOverview.Binding.Commands>) this.\u003C\u003Ez__aspect35).CommandFactory;
}
}