在C#中创建代理对象

时间:2011-11-26 15:09:31

标签: c# wcf proxy

我希望在c#中使用代理对象。我可能会通过Windows Communication Foundation实现网络连接。到目前为止,我刚刚制作了一个非常基本的WCF服务,该服务适用于同一台计算机上的不同进程。我希望客户端类能够在同一进程上使用真实对象,并使用代理对象通过Internet访问真实对象。现在我可以为所有方法手动创建一个接口,我想在互联网上使用,手动创建一个代理类,调用每个方法的服务,并在服务主机和服务客户​​端上手动创建每个服务

然而,无论如何我可以通过WCF或任何软件自动创建接口和代理类?

1 个答案:

答案 0 :(得分:5)

听起来你想要使用的是svcutil.exe,它旨在读取服务的元数据并创建C#类。

文档在这里:http://msdn.microsoft.com/en-us/library/aa347733.aspx

,更具体地说:http://msdn.microsoft.com/en-us/library/aa751905.aspx

有一个广泛的(非常广泛的!)选项范围控制生成的代理类。最简单的

svcutil http://service/metadataEndpoint

将读取元数据并一次创建C#类。

或者,如果您使用的是Visual Studio 2005或更高版本,请右键单击项目,选择“添加服务引用...”并按照对话框生成客户端代理。这使您可以轻松自定义代理类。

请注意,您需要发布某种元数据才能使该实用程序正常工作。有关启用此功能的详细信息,请参见此处:http://msdn.microsoft.com/en-us/library/ms734765.aspx