Joh*_*dol 7 wcf wsdl web-services stubbing
我知道这是一个基本主题,但从wsdl开始之前从未这样做过.
我正在交给一个wsdl文件和一堆带有类型定义的xsd.我不知道它们是否是从WCF服务创建的(我猜是因为拆分格式)但我确实需要创建一个实现合同的WCF服务.
问题:如何获得服务合同界面?
我知道wsdl.exe和svcutil.exe - 但不太熟悉什么是什么.我想在那之后剩下的就是实施服务合同了.
任何帮助赞赏!
PS我还有另外一个问题,但我试图在同一个问题中加入太多东西 - 所以让我们现在保持简单.
mar*_*c_s 13
你有两个选择:
选项1:svcutil.exe在命令行上使用该实用程序.它应该安装在您的C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin目录中(或类似的东西,具体取决于您拥有的机器和操作系统)
使用svcutil - ?为所有众多参数的列表.基本上,以最简单的形式,使用:
svcutil (name of your service).wsdl (name of your datafile).xsd
Run Code Online (Sandbox Code Playgroud)
这将创建一个(name of your service).cs包含服务和数据协定的相应C#文件,以及一个示例配置文件.
生成的*.cs文件(或*.vb,如果你想要VB.NET)将包含服务合同(由WSDL产生的方法)和服务的数据合同(来自XSD的数据部分) .
选项2:使用Visual Studio中的"添加服务引用"对话框(在解决方案资源管理器中的"引用"节点上),然后输入WSDL文件的文件名:

这将创建一个服务引用,它与svcutil.exe实用程序的输出基本相同- 加上一些Visual Studio的帮助程序类和文件.
不幸的是,在这两种情况下,进口将产生一个可怕的重载配置文件,该文件可能是原因很多程序员的人认为WCF是非常复杂的 - 它真的不是,但是这两个导入工具只是做创建基本一个窘况坏工作为你配置....不要让你吓跑你!
如果WSDL中添加服务引用不会自动转换所有相关的和必要的XSD文件,则可能需要将这些添加到您的项目,然后使用类似XSD2Code转换那些C#(或VB.NET)班为你.
的wsdl.exe是已过时的实用程序可将WSDL文件转换成ASMX(ASP.NET Web服务)存根-不要使用了,使用svcutil.exe或WCF Visual Studio中的添加服务引用.
至于如何创建一个适当的和最小的WCF配置,请查看与Miguel Castro标题为Extreme WCF的DotNet Rocks电视节目#122 .米格尔提出了一个伟大的方式来组织你的WCF项目,并打造为真正需要的(因此可以理解SvcUtil工具很多比产生乱越好)一样多的配置.
| 归档时间: |
|
| 查看次数: |
7786 次 |
| 最近记录: |