使用svcutil.exe
生成服务(具有wsdl)的代理很容易。
使用命令
call "%VS100COMNTOOLS%"\vsvars32.bat
svcutil.exe http://localhost:8754/MyService.svc?wsdl /out:MyProxy.cs /config:MyProxy.config
生成两个文件,即
MyProxy.cs
MyProxy.config
所以,我有这些精彩的文件,可供所有想要拨打MyService
的应用程序使用。
但似乎没有适当的方法重复使用它们。
始终将配置复制到客户端应用程序App.config
。
所以,我可以拥有一个库,但其中只有MyProxy.cs。
客户端应用程序仍然必须自己引用System.ServiceModel
和System.Runtime.Serialisation
程序集。
这有点麻烦。
有没有办法“注入”MyProxy.config
甚至更好地拥有一个可以在客户端应用程序中引用和使用的库?
答案 0 :(得分:0)
你正朝着正确的方向前进。只有MyProxy.cs的库是Client API,因此您可以将项目命名为MyServiceClientApi,可以在其他项目和解决方案中重用该程序集。生成的app.config仅包含一些简单的http绑定设置,您可以认为基本设置是制作真实世界设置的起点,可能需要在应用程序开发,发布,部署和日常操作期间进行更改。因此,将生成的配置设置自动注入到其他应用程序的app.config中的价值很小。
关于你的上一个问题,请google"合并app.config"你会发现很多资源。但是,在这种情况下,自动合并/注入可能不会长期提高您的开发效率。
WCF for the Real World, Not Hello World可能会给你更多提示。