我们将打开用于创建客户端代理的Visual stdio命令提示符2010 (svcutil.exe)工具,并通过此工具创建自动生成的代码。
svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config localhost:8000/...同样的过程将以编程的方式使用System.CodeDom.Compiler.CodeGenerator命名空间来创建自动生成代理代码,而无需在新窗口中打开svcutil.exe工具。
我需要,如何以编程方式使用Silverlight4.0应用程序的slsvcutil.exe工具?如何使用C#源码为slsvcutil.exe工具创建自动生成代理代码,而不打开新的VS命令提示符?我需要这个C#的源代码。
我们可以使用System.Diagnostics.Process命名空间将此工具作为进程执行,但这只能应用于windows身份验证或设置用户名和密码。对于客户来说,这不是一种设置凭证的方便方法。
有没有什么替代方案可以使用slsvcutil工具以编程方式创建客户端代理?是否可以将svcutil代理代码更改为silverlight slsvcutil代理代码?silverlight 4.0中的哪个名称空间用于下载服务元文档?
发布于 2012-07-20 17:31:31
通过svcutil生成代理的关键点是使用生成的代码来创建服务合同和进行强类型检查。当您在运行时创建代理时,这当然不是必需的。
要在运行时创建代理,您需要事先了解契约。然后,您可以使用标准的WCF功能来创建具有此约定的代理类。
https://stackoverflow.com/questions/11575084
复制相似问题