问题标签 [castle-dynamicproxy]

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 回答
359 浏览

c# - 您可以在 Web 服务引用上使用城堡动态代理吗?

是否可以在已添加到 Visual Studio 项目的 Web 服务引用上创建动态代理?

我已经以正常方式添加了 Web 服务引用,并尝试使用 Castle 创建一个动态代理,以将方法调用包装在 try/catch 中以翻译任何 SoapExceptions,但是在运行它时我遇到了很多错误可序列化的类?

有没有人做过这样的事情?

谢谢

0 投票
3 回答
735 浏览

nhibernate - 帮助建设城堡动态代理

所以我从https://svn.castleproject.org/svn/castle/DynamicProxy/trunk/中提取了源代码

在 vs.net 2008 中打开它

问题:

  1. vs.net 无法打开 assembly.cs
  2. 程序集签名失败

我在做什么,而不是在做什么?

更新

所以我下载了 nant,在我的 PATH 中设置了 .bat 文件,这样它就可以在 cmd 提示符下工作。

我跑了:

nant default.build

收到此错误:

构建失败,\buildscripts\common-project.xml (48,3) 无效元素。未知的任务或数据类型。

我现在究竟如何构建 dynamicProxy 项目?

更新 这就是我所做的,看截图:

哦,我的孩子是:

@echo off "E:\dev\tools\nant-bin\nant-0.86-nightly-2009-05-05\bin\Nant.exe" %*

http://img697.imageshack.us/img697/5623/castlebuildscreenshot.png http://img697.imageshack.us/img697/5623/castlebuildscreenshot.png

0 投票
1 回答
1833 浏览

c# - Castle DynamicProxy IInterceptor 或 ProxyGenerator 是否应该被缓存?

我正在使用 StructureMap 通过实例调用来丰富我的一些对象

ProxyGenerator.CreateInterfaceProxyWithTarget(myObject, MYInterceptor)

目前我有MYInterceptor我的容器内部,我应该为拦截器实现任何类型的缓存吗?

第二个问题我应该ProxyGenerator在我的容器中注册我的,如果是这样,我应该对其应用任何类型的缓存吗?

0 投票
4 回答
1726 浏览

.net - 包装现有对象以拦截 .NET 中的方法/属性调用

我有一种情况,我想拦截对 .NET 中属性的调用。我一直在看 Castle 中的 DynamicProxy,它似乎工作正常。但似乎为了使用它,我必须从一个新对象开始,这意味着我不能做这样的事情:

我只是错过了什么吗?

编辑:

天哪,当然应该是wrappedMyType。大错。对不起。:(

0 投票
2 回答
216 浏览

.net - DynamicProxy2 和代理链

我需要代理代理的属性类型。所以情况是:

我有接口IMyInterface:

我可以很好地模拟界面,但我希望能够模拟,例如,名称属性。我意识到 String 不能被嘲笑,因为它是密封的。我希望看到的功能是:

应该由拦截器处理。我无法想象现有框架甚至可以做到这一点,因为我将更改属性的类型,但我想知道是否有一种聪明的方法来实现这一点。有什么方法可以插入代理生成并修改代理的属性的返回类型?

我认为 DynamicProxy2 不可能,但我想知道是否有人知道一些魔法。

0 投票
1 回答
825 浏览

castle-windsor - 温莎方法拦截 (AOP)

我正在尝试为特定方法创建拦截器,但我遇到了困难。我无法将方面绑定到特定方法。我创建了大多数示例显示的设施,但它仍然无法正常工作。谁能给我一个如何做到这一点的例子?如果可能的话,我更喜欢 xml 配置。

另一个问题,我有这个代码:

然后...

不执行此方面。我错过了什么吗?我是否对 aop 使用了错误的方法?

谢谢

0 投票
2 回答
160 浏览

castle-dynamicproxy - 使用 Castle.DynamicProxy 调用 2 个目标

假设我有一个接口 IInterface。假设我有 2 个相同 IInterface 的实现(foo & bar)。是否可以在两个目标上调用相同的方法?

0 投票
1 回答
1458 浏览

c# - 仅使用 DynamicProxy 拦截接口方法

我有这样的界面

实现该接口并具有另一个方法的类

还有一个拦截器

我只想拦截 IService 上存在的 Service 上的方法(即我想拦截 InterceptedMethod() 而不是 SomeMethod()),但我不想使用 IProxyGenerationHook 中的 ShouldInterceptMethod。

我可以这样做,但由于它返回一个接口,我不能在这个对象上调用 SomeMethod

可以工作的一件事是从 SomeMethod() 中删除虚拟并这样做

但我不喜欢这个解决方案。

我不喜欢使用 IProxyGenerationHook 中的 ShouldInterceptMethod,因为每次我更改接口时,我也需要更改 ShouldInterceptMethod,而且有一天有人可以重构方法名称并且不再拦截该方法。

还有其他方法可以做到这一点吗?

0 投票
1 回答
788 浏览

c# - 使用默认构造函数创建 InterfaceProxyWithoutTarget

使用 Castle.DynamicProxy,我“只是”想获得一个 Interface-Proxy-Without-Target,但是......使用默认构造函数,所以我能够重用代理类型。

更新

我的意思是做类似...

...除了生成的类型不实现默认构造函数。

我的实际上下文与 WCF 自定义有关,但这是另一回事。

0 投票
2 回答
5667 浏览

c# - 为什么 *each* 虚拟方法调用不会调用 DynamicProxy 的拦截器?

一个例子最好地解释它:

我本来期望输出:

相反,我得到:

为什么?

动态代理是如何工作的?我期待生成的代理从代理类继承,但是,它似乎使用组合将代理接口中的每个方法委托给实际实现。

我已经尝试过 Castle DynamicProxy 以及Cramon的旧动态代理实现