问题标签 [unity-interception]
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.
unity-container - Unity Container:围绕每个方法调用创建子容器
我们可以使用 Unity 拦截/扩展/自定义代理来执行此操作吗?
目前,上述代码是作为 WCF 行为实现的。我们现在有直接访问此服务层的类,而不是进行 WCF 调用并需要此行为。有趣的部分是我们需要在统一拦截中创建一个子容器。
c# - unity Interception: 对带有事件的接口进行接口拦截
我正在尝试使用统一拦截来拦截异常。我定义了一个接口和一个实现该接口的类。
我正在尝试使用 InterfaceInterception,但 Unity 抛出了一个类型不可拦截的异常。我检查了我的类,与成功拦截的其他类的唯一区别是这个类和接口声明了一些事件。如果我使用 VirtualMethodInterception,Unity 不会抛出异常。
我正在使用 C#
为什么 VirtualMethodInterceptor 工作,为什么 InterfaceInterceptor 不工作?
以下是实际代码的简化。
统一配置是
异常详情如下
例外是:ArgumentException - ClassToBeInterceptable 类型不可拦截。参数名称:interceptedType
编辑 :-
该类被指定为另一个类的依赖项,并且在构建另一个依赖于“另一个”类(或者更准确地说,“另一个”类的接口)的类的过程中抛出了上述异常。
c# - 基于 snmptrad 示例的 SharpSNMP 实现停止工作
我正在做一个基于 Sharp-SNMP 库 (snmptrapd) 中包含的示例的应用程序原型,以从 SNMP 协议获取一些数据,但完全停止工作,由于某种未知原因停止工作但不抛出任何异常,编译并执行好。
问题在于事件从未发生过。
依赖:
- 来自 Microsoft 的 Unity 容器
- SharpSNMP 库
- SourceGrid (Windows.Forms)
我不得不指出,直到 2 天前,它的工作就像一个魅力,但现在,我的想法已经不多了。(而且我没有在我的代码中修改一些激进的东西)。
C# 代码
应用程序配置
c# - vb.net中的统一拦截自动配置
我正在尝试在 vb.net 中进行拦截,因为我的工作只允许这样做。我以前从未遇到过具有这种 If.something 语法的 lambda。
这在 vb.net 中看起来如何?如果我将来需要谷歌这个语法,这个语法叫什么?
c#-to-vb.net - 在 VB.NET 中使用 Unity AutoConfig 配置拦截
我正在尝试在 vb.net 中进行拦截,因为我的工作只允许这样做。我使用它的方式是配置一些记录器,以便拦截运行的每个业务逻辑功能并将其记录到数据库中(坏主意,但这只是一个示例)。这是我发现的一个例子:
这是我试图在 vb.net 中工作的内容,但它一直抛出错误。
错误是:
现在显然我需要指定一些类型,但重点是我需要自动注册,那为什么我需要提供一个类型呢?此外,C# 代码不需要它,代码示例也不需要它(见下文)。
c# - Unity ICallHandler 与 IInterceptionBehavior
似乎 Unity 提供了 2 种不同的途径来实现 AoP 功能。
问题是为什么?有什么区别?每种方法的优缺点是什么?
例如使用 ICallHandler:
但是也可以使用 IInterceptionBehavior 代替 ICallHandler 来实现类似的功能
还有一个混合的地方可以让你设置拦截但使用调用处理程序,例如。
那么使用哪一个呢?为什么在单个框架中存在看似多余的解决方案?
c# - 团结+拦截+假货=大火球
我无法让 Unity 与新的 Fakes 框架(以前的 pex 和 moles)配合得很好
当我尝试创建统一拦截库的伪造品时,它导致我的单元测试在调试时运行良好,但会中断
InvalidProgramException - 公共语言运行时检测到无效程序。
问题是为什么?为什么调试与发布的行为不同?单元测试在调试时通过,但在我选择运行它时会因上述异常而中断。
unity-container - Microsoft Unity 基类拦截
我有一个应用程序,它有一个基类和派生类,每个实现类都有自己的接口。我想使用 Unity 的拦截对基类的派生类型进行异常处理。
我是拦截新手,所以我不知道所有的怪癖。据我所知,我必须在每个实现解析中注册拦截。关键是我所有的实现都有一个基类,所以我认为我可以跳过冗余并仅在基类上设置拦截,这将在每个实现类上触发。
这是我的设置:
这工作正常,但我想有这样的东西TestUnityContainer
我将有更多从基础服务继承的服务类,我认为这会为我节省很多时间,因为它们都有相同的拦截行为。
这在 Unity 中是否可行?如何实现?如果需要对模型进行一些小的修正,我愿意接受,只要它们是次要的。
dependency-injection - Unity 拦截和带有循环引用的类
我的富域模型有一些循环引用,这是有意的。
我还在编写自己的 ORM 以获得更多控制,并检测对属性所做的更改,我使用 Unity 拦截对设置器的任何调用并触发属性更改通知(类似于 EF 的工作方式)。
问题是我得到了堆栈溢出,因为策略拦截一遍又一遍地遍历同一个对象。有没有办法让它做引用计数?
我已经确保构造函数不是循环依赖的,但我仍然需要策略注入来停止重复递归相同的对象。
c# - 如何在订购后跟踪方法调用?
我想按照顺序跟踪方法调用。因为日志记录将应用于生产,所以我不想修改我的代码这么多。
到目前为止,我想在 Unity 上应用一个拦截器来跟踪方法调用,我几乎完成了。但是,打印出来的日志不是我所期望的。我需要的只是:
从 peusedo 代码如下:
跟踪日志的格式应如下:
进入方法调用 1/进入方法调用 2
离开方法调用 2 / 离开方法调用 1
顺便说一句,我的应用程序在 .Net 框架版本 4 上运行。
程序如下:
对不起我的代码。它很长。