【发布时间】:2012-06-08 02:59:01
【问题描述】:
嗯,首先,我已经在互联网上浏览了两个多小时,但我真的找不到任何有用的答案来解决我的问题。 好吧,它很简单: 我有一个客户端-服务器程序,我需要使用远程处理和表单列出服务器中的文件(我知道 WCF,但这不是重点)。好吧,我的所有列表目录/文件夹都可以正常工作(在我自己的 PC 上进行没有远程处理的测试),但是当我尝试“远程处理”这个时,我遇到了困难。
首先:我使用http作为频道,注册和激活都可以。至少我猜,因为我正在使用:
RemotingServices.Marshal(Server,"ListaArquivos")
在服务器中和
server = (Server)Activator.GetObject(typeof(ServerDLL.Server), "http://localhost:12345/ListaArquivos")
在客户端中,Server 是 .dll (MarshalByRefObject)。
我的步骤是:
- 我有一个 .dll 类(继承 MarshalByRefObject),它包含我在客户端到服务器步骤中调用的所有方法。 其中 1 个方法返回 TreeNodeCollection 和...
- 在客户端表单中,我调用此方法并尝试将此集合插入表单中,但此时我得到“Windows.Form.TreeNodeCollection”blabla“不可序列化”。
这是我的疑问,我怎样才能做到这一点? P.S->我的项目链接:My Explorer
【问题讨论】:
-
你是序列化数据还是表单?数据是一回事,这很常见。但是,如果您尝试通过网络发送表格……那就是另一回事了。我会避免的。