使用.NET Remoting 传输文件?
我正在使用 .NET 远程处理在网站和 Windows 服务之间进行通信。 他们都生活在不同的机器上。 我有一个静态定义的端口号,供所有请求和响应使用。
我还使用这种机制将文件从网站传输到 Windows 服务盒。 我在远程到 Windows 服务框的对象中传递一个 Stream 对象。 Web 框正在打开另一个看似随机的端口来促进此包含文件 Stream 的请求。
有没有办法指定该文件 Stream 应使用哪个端口? 任何人都知道为什么它不想使用我定义的端口并且我所有其他请求/响应都没有问题使用?
我正在使用 .NET Framework v2。
I'm using .NET remoting to communicate between a web site and a Windows service. They both live on different machines. I have a statically defined port number for use by all requests and responses.
I also use this mechanism to transfer files from the web site to the Windows service box. I'm passing a Stream object in the object that is being remoted to the Windows service box. The web box is opening another, seemingly random, port to facilitate this request that includes the file Stream.
Is there a way to specify which port this file Stream should use? Anyone know why it doesn't want to use the port I have defined and that all my other requests/responses use with no problem?
I'm using .NET Framework v2.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
只需将流读入 byte[] 然后传递即可。 正是我遇到这种情况时所做的。
Just read your stream into a byte[] then pass that. Exactly what I did when came across this situation.
以下是使用 .NET 远程处理实现文件传输的人:
http://www.codeproject .com/KB/dotnet/Net_Remoting_Events.aspx
可通过页面上的链接获取源代码。
不过,我同意 John Saunders 的评论,即您应该转向 WCF。
Here is someone who has implemented file transfer with .NET remoting:
http://www.codeproject.com/KB/dotnet/Net_Remoting_Events.aspx
Source code is available from a link on the page.
However, I agree with the comment from John Saunders that you should move to WCF.
向远程对象添加一个方法以返回
Stream
。只需记住将其包含在
using
子句中即可正确处理它。Add a method to your remoting object to return a
Stream
.Just remember to dispose of it correctly by enclosing it in a
using
clause.使用“远程回调”传递“类似流”的远程对象作为参数。
http://www.codeproject.com/Articles /1584/在网络应用程序中使用远程回调
Use "remoting callbacks" passing a "stream like" remote object as parameter.
http://www.codeproject.com/Articles/1584/Using-the-Remoting-Callbacks-in-Net-Applications