NinjectAsyncInitializationByInterception:请参阅 * 问题

时间:2024-06-24 10:57:04
【文件属性】:

文件名称:NinjectAsyncInitializationByInterception:请参阅 * 问题

文件大小:171KB

文件格式:ZIP

更新时间:2024-06-24 10:57:04

C#

NinjectAsyncInitializationByInterception 与相关的代码 根据您的要求,我发布了一个使用 ninject 的解决方案。 我稍微偏离了你的目标,因为构造函数没有执行初始化,而是一个方法。 该方法由拦截器调用。 通过更改为“没有目标的接口代理”(参见 )并让拦截器实例化对象,Async-Ctor 最有可能成为可能。 我还想说,我相信异步初始化可能弊大于利。 例如,初始化异常将很难处理,因为对接口的任何调用都可能导致初始化异常。 IFoo绑定到InterceptingProxyProvider : IProvider 。 提供商instanciates Foo ,所有的拦截器Foo ,然后创建并返回一个城堡动态代理( Proxy )。 这是Caller在注入IFoo时收到的信息。 AsyncInitializationInterceptor在它的构造函数


【文件预览】:
NinjectAsyncInitializationByInterception-master
----AsyncInitialization.sln.DotSettings(577B)
----packages.config(846B)
----IntegrationTests()
--------InterceptorSequenceIntegrationTest.cs(4KB)
--------Reflector{TTarget}.cs(2KB)
--------InterceptionTracker.cs(2KB)
--------KernelProvidingBase.cs(816B)
--------OneInterceptorPerInstanceIntegrationTest.cs(3KB)
--------IInterceptionTracker.cs(591B)
--------InterceptedInvocation.cs(1KB)
--------IFakeTarget.cs(231B)
--------IFakeInterceptor.cs(202B)
--------FakeTarget.cs(845B)
--------FakeInterceptor.cs(855B)
--------AsyncInitialization()
----Interception()
--------InterceptingProxyProvider.cs(2KB)
--------IPerInstanceInterceptorContainer.cs(226B)
--------InterceptorBindingBuilder.cs(939B)
--------IInterceptorConfigurationSyntax.cs(871B)
--------PerInstanceInterceptorContainer.cs(559B)
--------InterceptionBindingExtensions.cs(2KB)
--------AsyncInitialization()
----AsyncInitialization.sln(1KB)
----TypeRelations.png(151KB)
----Properties()
--------AssemblyInfo.cs(1KB)
----DependencyInjection()
--------TypedConstructorArgument.cs(2KB)
----README.md(2KB)
----AsyncInitialization.csproj(8KB)
----.gitignore(3KB)

网友评论