Remotion客户端程序是不是要引用远程对象的dll?

darzui 2004-04-02 03:56:08
比如,服务器端有个Remotable类,所在命名空间为RemotServer,编译为RemotAssembly.dll
我写了个客户端,代码为
RemotingConfiguration.Configure("App.config");
RemotableType rmo = new RemotableType();
label1.Text = rmo.StringMethod();
编译通不过,说Remotable类型找不到。然后我在客户端工程里应用RemotAssembly.dll,编译就通过了。我很奇怪,要是直接非得引用RemotAssembly.dll,dll都在本地了嘛。还要远程调用干嘛?

上面提到的代码,在msdn里面,""".net Framework/使用.net framework编程/使用 .NET 远程处理访问其他应用程序域中的对象/.NET 远程处理概述/生成客户端应用程序,是不是这个例子错了?
...全文
11 点赞 收藏 5
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Dresty 2004-04-05
不需要一定去加入远程对象的引用.可以用两端(C及S)共享接口程序集实现.
如果客户添加远程对象的引用,是当然可以实现远程调用的,但是这样客户端与服务端就是完全耦合的了,每当更改服务端程序就要同时更新客户端的程序.
如果做一个服务接口,远程服务程序实现此接口,然后客户端只添加服务接口的引用就可以完成远程对象的调用,而且只要不是更改接口程序,服务端程序如何更改都不会影响客户端程序,反之亦然.
回复
EastenChild 2004-04-04
一般来说,是要引用,因为客户端需要知道服务器所能提供的方法等的信息,这并不是说就和本地引用一样,因为使用Remoting,客户端和服务端都在你的项目solution之中,客户端引用后,服务器端照样分发到服务器,并不在客户端保留,只是客户端要知道那些方法等的信息才要引用的。

回复
不一定,可以做一个代理对象
回复
fefe 2004-04-02
远程调用接口是客户端及服务端都需要有这一个接口文件.它的用途是客户端可以直接调用服务端类的方法.
回复
darzui 2004-04-02
如果只需要远程对象的元数据,是不是可以在客户端写一个"假的"远程对象,只要保证其和真正远程对象的元数据一致就可以了?
回复
发帖
.NET Framework
创建于2007-09-28

1.7w+

社区成员

.NET技术 .NET Framework
申请成为版主
帖子事件
创建了帖子
2004-04-02 03:56
社区公告
暂无公告