我使用SvcUtil.exe从wsdl文件生成IClassName.cs文件,这很好。我的问题是,我不知道如何使用命令参数来生成ClassName.svc文件。
在运行SvcUtil.exe之后,我希望获得WCF服务,就像您从创建包含所有类*.svc、*.cs和接口时一样。
谢谢你,斯科奇
发布于 2014-06-03 12:48:55
首先,要生成代理类,我们需要启动并运行我们的服务。因此,在使用此实用程序之前,请确保您的服务运行时没有任何问题。
验证服务状态后,转到Visual命令提示符并运行以下命令。
svcutil http://localhost/MyService/ClassName.svc /Language=c#
/t:Code /out:ClassNameProxy.cs /config:ClassNameProxy.config在上面的命令中,您应该将服务URL ( http://localhost/MyService/Service1.svc)替换为服务的URL。由于我的服务是用c#.net开发的,所以我选择使用/Language=c#标志在同一语言中生成代理。
/t:code将指定以代码的形式生成输出。
/out:ClassNameProxy.cs /config:ClassNameProxy.config参数将告诉实用程序将文件命名为这些参数值中指定的文件。运行命令后,工具将生成输出文件和配置文件。
之后,只需将ClassNameProxy.cs文件包含到项目中,打开ClassNameProxy.config文件并将条目复制到web.config文件中即可。您还可能需要更新ClassNameProxy.vb文件,并根据您在项目中使用的名称空间更新命名空间。之后,您可以轻松地在代码中引用服务并调用操作。
发布于 2016-08-31 21:48:54
工具中的一些如何使用它的例子
svcutil http://service/metadataEndpoint -从运行中的服务或在线元数据文档生成客户端代码。
svcutil *.wsdl *.xsd /language:C# -从本地元数据文档生成客户端代码。
svcutil /dconly *.xsd /language:VB -从本地架构文档在VisualBasic中生成数据契约类型。
svcutil /t:metadata http://service/metadataEndpoint -从运行中的服务下载元数据文档
svcutil myAssembly.dll -为程序集中的服务契约和关联类型生成元数据文档
svcutil myServiceHost.exe /serviceName:myServiceName -为服务生成元数据文档,以及程序集中的所有关联服务契约和数据类型
svcutil myServiceHost.exe /dconly -为程序集中的数据类型生成元数据文档
svcutil /validate /serviceName:myServiceName myServiceHost.exe -验证服务托管
svcutil /t:xmlserializer myContractLibrary.exe -为程序集中的任何服务契约使用的XmlSerializer类型生成序列化类型
发布于 2016-06-14 13:46:53
对于仍在寻找答案但无法使用2012年版本的人,Visual 2015和.Net 4.5更新了svcutil.exe工具,以使用/serviceContract开关生成一个类,然后将其实现为.svc服务。您可能还需要提供/syncOnly /wrapped /messageContract交换机,这取决于原始XSD的
https://stackoverflow.com/questions/23997821
复制相似问题