问题标签 [proxy-classes]
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.
ruby-on-rails - 如何使用 BlankSlate 和 Proxy 模式在记录之间创建符号链接?
我希望能够添加一个类似于符号链接的记录。换句话说,我希望能够存储一个记录/对象,它将大多数属性推迟到另一个记录/对象。
与符号链接指向另一个文件(它拥有数据)的文件系统相同,但将其他所有内容推迟到另一个文件。
在我尝试创建新记录的那一刻,我的堆栈级别对于“链接”来说太深了。
我认为这将是解决问题的一种巧妙方法,可以提取到 gem ( acts_as_symlink :column => 'parent_id'
) 中。
另一个想法是保留原始记录的完整副本并使用 after_save 回调来更新任何符号链接,或者如果符号链接发生更改,则更新原始记录。所以不是真正的符号链接更像是同步的副本。
对我的代码或替代方案有什么想法吗?
c# - 如何编写代理方法?
首先,我不知道“代理方法”这个术语是描述我需要什么的真实方式,但让我告诉我真正想知道的内容:
假设我有一个名为 Proxy Class 的类,其中包含代理方法
实际上这是一面镜子,实际代码存储在 Web 服务器中。那么这个方法如何在不使用 webservices 的情况下调用位于 Web Server 中的真实方法呢?
这种方式可以保护我自己的代码,如果重构软件重构位于客户端计算机中的 dll,那么它只会显示基本方法签名和一些用于连接位于 Web 服务器中的真实类的连接数据。
那么我将如何实现呢?
也许远程处理?
asp.net - 嵌套项的 XmlArrayItem 反序列化错误
我对序列化完全陌生,非常感谢任何帮助。
我在反序列化从通过 WSDL.exe 创建的代理类收到的响应消息时遇到问题。我相信问题在于我使用的是 XmlArrayItem,其中包含嵌套项。
而不是得到:
我在代码中收到以下内容:
似乎响应只是继续附加消息的下一部分,而没有清除之前的任何内容。
这是调用 Web 服务的主要函数:
这是生成响应的类:
对于如何处理此问题的任何想法或建议,我将不胜感激。
c# - 如何拦截来自 C# 客户端 Web 代理的出站和入站 Soap 消息
我正在编写 UI 来测试 asmx Web 服务。服务器和客户端是.NET。客户端代理已使用 wsdl.exe 生成。
我想截获并存储由于在 Web 代理上调用方法而生成的传出和传入SOAP消息的字符串表示形式,因此我可以向 UI 添加一个功能,该功能将显示刚刚发送/接收的消息。
我依稀记得有两对扩展点可以添加代码来拦截消息,但我不记得这是如何完成的。我认为我想到的示例涉及在客户端压缩消息的某些部分并在服务器上压缩消息,即使在我的场景中,我想存储而不是更改消息。
感激地收到任何提示和帮助。
(我已经部分实现了 SoapExtension。我不明白 ChainStream 方法是如何工作的,而且我不确定如何通知侦听器肥皂消息已被捕获(因为我无法控制实例化肥皂扩大)。'
iphone - 打印发送到 forwardInvocation 的参数:NSProxy 的子类
我想通过打印选择器和参数来拦截发送到代理对象的消息。即使代理没有实现它们并且没有目标对象。请帮忙。我查看了几个选项和 Apple 文档,但他们假设您已经知道目标对象。我想干净地做到这一点而没有内存问题。
谢谢,谢谢
asp.net - 如何使用 ASMX webservice 的不同 proxyclass 版本(生产或测试)
我在 Visual Studio 2005 中有一个 ASMX Web 服务作为一个单独的项目。为了按照CODE 杂志教程追求“程序集分离” ,我的代理类位于一个单独的类库项目中,其中不包含我的代码 - 只是一个名为ASMXproxy与关联的reference.cs、app.config、 .disco 和 .wsdl 文件。因此,编译时我有一个FileServiceProxy.dll。
为了使用这个 WS,我在同一个解决方案中有一个名为 FileServiceDemo 的 Web 应用程序项目。它没有 Web 参考,而是对 FileServiceProxy.dll 的“常规”参考。在我的 default.aspx.cs 文件中,我可以通过这些片段访问我的 WS:
因此,虽然事情以这种方式工作正常,但当我想测试已部署的版本或更改“本地主机”版本时,我觉得很尴尬。我不能简单地对 app.config 进行更改:
简而言之,当我需要将我的 Web 应用程序发布到另一台服务器时,我必须更改代理类中的 Web 引用并重建它。然后,当我想在我的 localhost 上调试它时,我必须将 Web 引用改回 localhost(如上所述)。
理想情况下,我想在我的 Web 应用程序演示项目中公开某种选择(例如,单选按钮或用于在运行时更改 URL 的文本框),以便我可以为所需的 FileServiceProxy.dll 进行“后期绑定”在运行时使用。其他人已经草拟了“使用配置文件”的建议,但我被困在如何做到这一点上。在我看来,我必须有一个额外的项目,因此需要另一个 DLL——也许是 FileServiceProxyPROD.dll——但这似乎很尴尬,即使这样我也不确定我还需要做什么。
c# - NHibernate 在没有代理的情况下获取对象
我正在使用 NHibernate(2.0.1.4) 和 NHibernate.Linq(1.0.0.4) 从数据库中获取类型节点的对象。
当我得到这些对象时,我得到的集合的最后一个对象是 Proxy 类型的(因为我使用了 "NHibernate.ByteCode.LinFu"" )
我使用了以下 linq 查询:
anchestorNodes 是要获取的节点对象的 Id 列表。
当我在“ancestorNodes”列表中有 3 个 id 时,我从查询中获得的结果(mynodes)的最后一个对象是 nodeProxy 类型。
这怎么可能?为什么它总是最后一个对象?我怎么解决这个问题?
.net - 具有服务引用代理的自定义属性
我将自定义属性添加到作为 Web 服务的一部分使用的枚举中。当我将 Web 服务作为服务引用添加到 win 表单应用程序时,自定义属性不会出现在服务引用代理对象中,尽管枚举类型本身确实出现了。我已经看了一遍,没有找到任何接近解决方案的东西。
我是否正在尝试做一些不可能的事情?
服务器端代码:
客户端代理生成代码:
nhibernate - 如何确保 NHibernate 创建 IList 代理?
我的域对象上有一个属性,它公开如下:
如您所见,内部表示是一个IList<WorkPost>
,分配的值(它是来自 NHibernate 的延迟加载代理)然后被转换为正确的类型。这个实现让我觉得很糟糕,因为它依赖于 NHibernate 代理的内部表示。为了确保 NHibernate 将代理生成为列表,我使用AsList()
声明为属性创建了流畅的映射:
但这给了我比要求更多的东西,因为列表语义意味着排序再次向数据库模型添加了一些额外的字段以及一些额外的查询(由于提交时更新了排序字段),所以上面的“AsList”有去。
我如何控制 NHibernate 在生成代理时应该返回什么类型的接口?(注意:更改IEnumerable
属性的返回类型不是我正在寻找的答案:-))
c# - Why can I change the Registry only the first time?
I am attempting to write an application that automatically changes the proxy server based upon what network connection is active. In this application, the user can also manually click a server in the notifyIcon context menu and call the function to switch the server.
My problem is the following: The application changes the proxy server the first time the function is called, but will not work after that. I have put debug statements in to make sure the correct proxy server is being passed to that function (and it is indeed correct), but the registry entries never get changed after the first time. What am I doing wrong?
Here is my Proxy Class:
And here is how I call the function from the context menu: