0

我们将打开 Visual stdio 命令提示符 2010 (svcutil.exe) 工具来创建客户端代理,自动生成的代码将由该工具创建。

svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config localhost:8000/...

相同的过程将使用System.CodeDom.Compiler.CodeGenerator命名空间以编程方式创建自动生成代理代码,而无需在新窗口中打开 svcutil.exe 工具。

我需要,如何以编程方式使用 Silverlight 4.0 应用程序的 slsvcutil.exe 工具来做到这一点?如何使用 slsvcutil.exe 工具的 C# 源代码创建自动生成代理代码,而无需在 new 中打开 VS 命令提示符?我需要这个 C# 源代码。

我们可以使用 System.Diagnostics.Process 命名空间将此工具作为进程执行,但这是我们只能应用于 Windows 身份验证或设置用户名和密码。这不是客户设置凭据的便捷方式。

是否有任何替代解决方案可以使用 slsvcutil 工具以编程方式创建客户端代理?是否可以将 svcutil 代理代码更改为 silverlight slsvcutil 代理代码?silverlight 4.0 中有什么命名空间来下载服务元文档?

4

1 回答 1

0

svcutil 生成代理的关键是使用生成的代码来创建服务合约和强类型检查。当您在运行时创建代理时,这当然不需要。

要在运行时创建代理,您需要事先了解合约。然后,您可以使用标准 WCF 功能来创建具有此合同的代理类。

于 2012-07-20T09:31:31.383 回答