问题标签 [ioc-container]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 类型的构造函数:找不到“Namespace.type”
我使用 Castle.Windsor 作为 IOC。
所以我试图在 HTTPHandler 的构造函数中解析服务类型。我不断收到此错误,“类型的构造函数:未找到“Namespace.type”。 ”我的配置具有以下服务类型条目:IDocumentDirectory
在我的新处理程序中,构造函数如下所示:
我从未使用 Castle.Windsor 收到此错误。有人可以解释吗?
谢谢!
castle-windsor - 用于私有/受保护方法的 Castle Windsor 拦截器
为了让温莎城堡的拦截器拦截一个方法,是否需要将该方法声明为 public?
c# - 为什么这个方法调用没有被拦截?
为什么 DoIt() 方法调用不会被拦截?我应该使用 InterfaceInterceptor 以外的东西来拦截 DoIt() 方法吗?你会怎么做?
.net - 在 Castle Windsor 中使用 Generic 参数解析 Generic
我正在尝试注册 IRequestHandler 1[GenericTestRequest
1[T]] 之类的类型,它将由 GenericTestRequestHandler`1[T] 实现,但我目前从 Windsor 收到错误“Castle.MicroKernel.ComponentNotFoundException:没有支持服务的组件”这是支持的操作类型?或者它是否远离支持的寄存器( Component.For(typeof( IList<>).ImplementedBy( typeof( List<> ) ) )
下面是一个断裂测试的例子。///////////////////////////////////////// ////
ioc-container - Should I use Castle Windsor because NHibernate is using it, and I'm already using NHibernate?
I've just finished converting a large amount of legacy code to use NHibernate. The next thing I want to do is introduce an IOC container for hooking up the data access layer repositories and other such things. There are a variety of options out there at the moment - Castle Windsor, StructureMap, NInject, Unity etc; the choice is difficult.
Should I let the fact that NHibernate is already using Castle Windsor influence my decision?
I can imagine some potential benefits - for example lower memory usage. But there may be downsides, such as having to stick with the version of Castle that NHibernate is compiled against, rather than being able to upgrade the IOC container when I choose.
Thoughts?
c# - 如何覆盖在 Castle Windsor 中注册的组件?
我刚从 Windsor 开始,所以请保持温和 :) 我有一个场景,我希望能够覆盖/替换放置在 Windsor 容器内的组件。继续阅读...
在我的产品代码中,我希望能够注册一个实现基类的组件,并使用容器来解析实现者。到目前为止,使用
和
在我的测试中,我想添加一个存根/模拟实现来覆盖“DebugLogger”实现,这样当我的产品代码调用container.Resolve<LoggerBase>();
它时,它就会得到被覆盖的实现。
欢迎任何指点!
structuremap - IOC StructureMap 中的 NServicebus 消息处理程序生命周期
如果我希望处理每条消息的实例,我需要与 NServiceBus 消息处理程序一起使用所需的 IOC 实例生命周期。
PerRequest 不起作用,因为考虑到我拥有的众多构造函数依赖和依赖图,当我每个 Handle(MessageX msg) 调用只需要一个时,它给了我很多实例。我不能或不想将它直接注入消息处理程序,因为它需要在对象图的下方。例如注入 IPersonService,依赖于 IPersonRepository,它们可以是每个请求(默认),但 IPersonDBContext 需要是每个消息调用。
PerThread 无法工作,因为 NServiceBus 一遍又一遍地使用相同的工作线程。
Singleton、HttpContext等..显然不适用。
有人用 StructureMap 或 Castle 遇到过这个吗?
linq-to-sql - UNITY:每次都传入一个新的数据上下文?
我正在尝试使用统一每次使用新实例在我的存储库中自动注入数据上下文..,我的想法是确保每次注入新的数据上下文
目前它未能创建存储库,我认为它无法解决 MyDataContext
在“存储库”(见下文)上创建构造函数以获取存储库上的 DataContext 之前,一切正常,但现在失败了。
我目前在我在 global.asax 中创建的统一容器中有这个设置,我还注册了 MyDataContext 类型,它是标准 DataContext
基本上我有一个像这样调用存储库的服务
这是我的存储库
编辑
我差点忘了我这样做是为了创建服务
编辑 - 正在生成的错误
编辑-删除存储库上的构造函数
这与数据上下文有关,因为如果我删除存储库上采用 DataContext 的构造函数,那么一切正常,但我当然需要它接受 DataContext 才能每次都注入“新”数据上下文
编辑 - 实际错误
深入挖掘后,我发现了这个错误....
编辑 - 测试以使用 1 行代码解析 DATACONTEXT
这也失败并出现与上述相同的错误 - 多个构造函数
编辑 - 我的数据上下文中的所有构造函数
这些是由外部实用程序创建的,但一切都应该很好..
编辑 - 演示在没有 Unity 的代码中创建 DataContext 100% 没有问题
asp.net-mvc - Project Windsor - 扩展 DataContext 的存储库
在开始之前,我会说:我必须在我的存储库中进行扩展DataContext
,因为我正在调用存储过程并且ExecuteMethodCall
只能在内部使用。很多人似乎并不知道这一点,所以请不要说“只是不要扩展 DataContext”。
我刚刚开始使用 Windsor 作为我的 IoC 容器。我的控制器很乐意执行以下操作:
但是我的存储库必须有这个构造函数:
但是 IoC 容器可以让您在 web.config 中为您的存储库指定连接字符串。为了做到这一点,我在存储库中的构造函数必须是什么样的?如果我没有指定我展示的那个,那么它会抱怨没有构造函数接受零参数。
干杯
编辑
在 global.asax.cs 中
WindsorControllerFactory.cs(在根目录中)
但是,container
如果 web.config 中没有任何内容,则不需要?
ioc-container - Spring.Net IoC:使用配置元数据 XML 的替代方案
我试图掌握使用 spring.net ioc 来满足我的目的。
spring.net ioc 中提供了哪些使用 xml 配置(元数据文件)的选项。即我不想使用以下内容:
相反,我想从如下数据库中加载这些值: