问题标签 [castle-windsor]

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.

0 投票
1 回答
1004 浏览

vb.net - Windsor IoC 示例帮助 - “未注册的 HttpServiceWatcher&”。

我正在关注 C# 中的Windsor Inversion of Control (IoC) Getting Started example,但我在 VB.Net 中实现它,我遇到了一个小问题..

这是我完整的例外:

无法创建组件“form.component”,因为它需要满足依赖关系。form.component 正在等待以下依赖项:

服务: - 未注册的 InversionOfControl.HttpServiceWatcher&。

但我想我正在注册它 - 这是第一个注册的!

我正在使用 VB 8 (Visual Studio 2005 / .Net 2.0) 和Windsor 1.0 RC3


这是我的App.vb

表格1

HttpServiceWatcher

IFailureNotifier

AlarmFailureNotifierEmailFailureNotifier都实现了 IFailureNotifier 但Notify()方法为空


我尝试通过将 IFailureNotifier 放在第一个、HttpServiceWatcher 3rd 和 Form 最后来更改顺序,但我得到了同样的错误。

我已经完成了清理和重建,但我得到了同样的错误。

我显然对此很陌生(因为我正在经历“入门”),你能指出我错过了什么吗?

谢谢 :o)

0 投票
2 回答
9135 浏览

asp.net-mvc - 如何使用 Windsor 将依赖项注入 ActionFilterAttributes

看到NInject 如何做到这一点并且AutoFac 可以做到这一点后,我试图弄清楚如何使用 Castle Windsor 将依赖项注入 MVC ActionFilters

目前我正在使用一个丑陋的静态 IoC 帮助类来解决来自构造函数代码的依赖关系,如下所示:

我很想从我的过滤器中删除那个静态反模式 IoC 的东西。

关于我将如何与温莎城堡一起做这件事的任何提示?

不,改变 DI 框架不是一种选择。

0 投票
2 回答
1233 浏览

inversion-of-control - 在 Windsor 容器中使用 DynamicProxy 作为装饰器模式

我正在寻找有关使用和配置 Windsor 以提供动态代理来拦截对另一个类的实例的调用的一些信息。

我的类表示一个资源,出于性能原因,该资源应该由容器作为长期存在的实例保留。但是,有时此资源可能会转变为不可用状态,并且需要更新。我希望容器来处理这个,所以客户端代码不必这样做。我可以创建自己的工厂来做到这一点,我想知道是否有一些温莎注册很酷可以为我做这件事,所以我不必创建单独的工厂类:)

下面是一些伪代码来演示这个问题:

任何想法如何实现我的 RealResourceInterceptor 类,以及如何配置容器以使用它?谢谢!

0 投票
1 回答
135 浏览

asp.net-mvc - 通过 Windsor IInterceptor 访问操作

我希望通过使用 Windsor IInterceptor 在 MVC 应用程序中处理授权 - 因为这似乎是我可以获得对参数的命名访问的唯一方法,传递的操作与确定用户是否具有访问权限相关。

从我的 Intercept 方法中,我需要访问被调用的操作。我想出了如何获取控制器和操作名称(通过 RequestContext),但不是实际的方法 - 有什么好主意吗?

作为参考,这大致是代码的样子:

0 投票
2 回答
2982 浏览

c# - Castle Windsor:我的瞬态组件会被垃圾回收吗?

使用 Castle Windsor,我有一个配置了短暂生活方式的组件:

这将像这样使用:

我的问题是,服务实例在超出范围后会被垃圾收集,还是 Castle Windsor 会保留引用?我发现了这个类似的问题,这意味着后者可能是这种情况-但是在检查了那里发布的链接之后,我不确定讨论是关于保持引用,还是关于确保对象在实现 IDisposable 时被释放. 我的对象不需要被处置。

如果 Castle Windsor 保留该实例,是否有任何简单的方法可以防止这种情况(可能通过配置)?

编辑
看来,我需要设置发布跟踪政策。这可以在 xml 配置文件中配置,还是需要在代码中设置?是否可以按组件设置发布跟踪策略?

0 投票
1 回答
283 浏览

c# - 如何获取休眠 DynamicProxy 的代理类型的全名?

我正在使用 netdatacontractserializer 和 SerializationBinder 为客户端的休眠代理创建自己的运行时类型。

除了我被迫假设域模型中的每个名称只有一种类型之外,这一切都有效。即我被迫忽略命名空间。原因是 SerializationBinder 只允许我访问“MyObjectProxyb04bae2d04d34e8a98b1d93bf24428cc”和“DynamicProxyGenAssembly2,Version=0.0.0.0,Culture=neutral,PublicKeyToken=null”来派生父类型。

如您所见,没有数据指向父类型的命名空间。

我已经查看了更改生成代理的名称(以包含名称空间前缀),但这似乎是硬编码的。

0 投票
1 回答
2724 浏览

.net - Castle Windsor:抑制 Resolve() 抛出的异常

解析 Windsor 容器找不到的组件时,会引发异常。

StructureMap 有一个 TryGetInstance 方法,它返回 null ,它找不到请求的组件。

温莎城堡有这样的东西吗?或者我是否被迫捕获这些异常(我不喜欢这样,因为抛出和捕获异常的性能开销)。

提前致谢,

雷姆科

0 投票
0 回答
686 浏览

c# - 使用 Castle Windsor 和 MicroKernel 的 dll “插入式”架构

我想创建一个无需任何配置即可使用 IoC 的框架:

因此,而不是(从http://www.castleproject.org/container/gettingstarted/part1/code.html调整):

不需要调用该container.AddComponent方法,因为会有一些初始步骤通过在已知目录中查找包含实现 ISomeComponent 的类并将它们注册到 WindsorContainer 的任何 dll 来执行一些“自动连接”。

我可以看到这可以从头开始,但理想情况下,如果有一个已经完成的开源项目,我不想重写此代码!

0 投票
5 回答
3358 浏览

c# - 温莎城堡找不到我的服务类型

试图利用 Castle Windsor IoC。我有一个非常简单的应用程序。我的接口存在于 Test.Services 命名空间中。编译时出现以下异常:

“找不到类型名称 Test.Services.IParse,Test.Services”

这是我的 app.config:

有人可以告诉我我错过了什么吗?

谢谢

-缺口

0 投票
1 回答
498 浏览

c# - 在 Castle.Windsor 框架中连接事件订阅者的问题

我无法为我的 Castle.Windsor IoV 组件连接事件。即使我已经确认了它们的方法和签名,它也会引发异常并显示消息“对象与目标类型不匹配”。

谁能解释一下它所期望的对象是什么?

我的接线看起来像:

在有人问之前,是的,我已经包括: