问题标签 [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.
wcf - Castle.Proxies.EntityProxy 的数据联系失败
如何通过 WCF 通道发送 Castle.Proxies.EntityProxy?
如何将代理设置为 KnownType?
c# - 是否可以通过 DynamicProxy 向类型添加属性?
我正在使用 Castle DynamicProxy 在运行时创建给定类型的代理 - 包括几个混合。
我试图弄清楚是否可以向代理添加任意属性,例如:
在运行时,我创建了一个新类型,如下所示:
从理论上讲,这似乎应该是可能的——也许我只是不知道如何用 Castle 来做这件事……有什么想法吗?谢谢!
c# - 代理没有获取虚拟属性的属性?
使用DynamicProxy
2.2 我想我看到了这个问题:
“代理上不可用的虚拟属性的可继承属性”
http://support.castleproject.org/projects/DYNPROXY/issues/view/DYNPROXY-ISSUE-109
我有一个带有虚拟属性的基类。该属性标有[XmlIgnore]
。如果我序列化派生类,则不会序列化该属性。但是,如果我为派生类创建代理,则该属性将被序列化。这是一个显示问题的简单控制台应用程序:
这是一个错误吗?还是我做错了什么。快速解决方法是让我的IsDirty
财产不是虚拟的。在我正在使用的场景中,这实际上是可以接受的,但我更希望它是虚拟的。
谢谢。
帕特里克斯蒂尔 http://weblogs.asp.net/psteele
c# - 如何“真正”将 DynamicProxy 向下转换回其原始类型(通过 WCF 发送)
好的,情况是我们有一个类,PatientDto
和一个由 Castle 生成的 DynamicProxy PatientDtoProxy
,。
我们在 Silverlight 客户端中使用此代理,然后希望通过 WCF 服务调用将其发送回服务器。
WCF 服务合同需要一个PatientDto
(即不是代理),并且如预期的那样,如果您尝试发送其他任何内容,它就会崩溃。
从本质上讲,我们觉得我们应该将其“转换”回 aPatientDto
以使事情正常工作......但实际上,即使您将引用转换为 PatientDto,它也不会改变任何东西——WCF 仍然可以看到该对象在内存中作为一个PatientDtoProxy
并炸毁。
显然,对新版本进行深度复制PatientDto
是一种选择(并且确实有效),但令人不快。有什么我们没有想到的技术吗?
c# - 托管可扩展性框架、拦截和动态代理
简单的任务,但找不到任何方向。
我想拦截 MEF 的对象创建并返回我的对象的代理(使用城堡动态代理),然后是对象本身。可以这样做吗?
castle-dynamicproxy - 如何将接口聚合到城堡动态代理中
我想在我的代码库中允许声明式 mixin 管理。我想声明一个接口
所以我的类只能消耗他们需要的数据访问层的位。在我的 IoC 容器中,我想将这些接口的实现聚合到一个实例中。但是,当我执行与引用线程类似的操作时,生成器会抛出一个异常,指出接口在多个地方实现。除了实现自己的拦截器并通过之外,我还能做什么?
相关主题:
更好的例子(代码墙)
投掷
c# - 使对象在代码中动态实现接口
我想让这个测试通过 - 有人知道怎么做吗?
我想这样的事情可以用城堡动态代理、linfu等来完成……但是怎么做呢?
c# - WPF 上的 Castle 动态代理和 INotifyPropertyChanged
我使用 Castle DP 用代理包装我的实体,我的实体自己实现 INotifyPropertyChanged。并在调用 set 时引发事件。
我在包装上编写了一些单元测试,以查看当我通过代理操作实体并且它们都通过时触发了 propertychanged 事件。
问题出在带有屏幕的真实应用程序上,当我将屏幕绑定到实际上是 DP 的属性时,注册到该属性的屏幕以不同的方式更改,除非我在内部实现注册管理,否则它不起作用拦截器代码
为什么这是这种行为,wpf 对我在注册属性时没有更改的属性做了什么?
castle-windsor - 是否有 Windsor/DynamicProxy 日志记录方面,我可以将其作为我的类/方法的属性?
在城堡堆栈中?
回答后我想出了这个:
c# - 无法使用 DataContractJsonSerializer 序列化 DynamicProxy2 生成的对象的列表<>
我在使用System.Runtime.Serialization.Json.DataContractJsonSerializer
序列化List<T>
代理对象时遇到了问题。它适用于单个代理对象,但 List 使它爆炸。像这样的东西:
这样做会给我以下异常:
System.Runtime.Serialization.SerializationException:键入“Castle.Proxies.SimpleViewModelProxy”,数据合同名称为“SimpleViewModelProxy:http : //schemas.datacontract.org/2004/07/Castle.Proxies”。考虑使用 DataContractResolver 或将任何静态未知的类型添加到已知类型列表中 - 例如,通过使用 KnownTypeAttribute 属性或将它们添加到传递给 DataContractSerializer 的已知类型列表中。
我能够序列化单个“SimpleViewModelProxy”对象,或者一个List<SimpleViewModel>
,但不是一个List<SimpleViewModelProxy>
. 有没有人有过让这个工作的经验?他们可以提供一些关于我做错了什么的指示吗?