永发信息网

如何将一个wcf服务发布成WSDL

答案:2  悬赏:60  手机版
解决时间 2021-03-01 05:55
  • 提问者网友:放下
  • 2021-02-28 22:52
如何将一个wcf服务发布成WSDL
最佳答案
  • 五星知识达人网友:冷風如刀
  • 2021-03-01 00:29
2
改个名字为“manager.wsdl”

3
下一步,定义命名空间和协议等信息,默认即行

4
finish后,会在主工作区出现如下图

5
这是manager.wsdl的图形化形式,点击“Source”会可查看到源代码

6
这是默认生成的wsdl,我们要根据我们的项目需要,修改上面的图,首先对方法名进行修改

7
修改之后,右边的input和output也跟着修改了,这两个就是定义plus的输入和输出。 点击input参数“plus”右边的提示箭头

8
就在这里定义输入参数和和参数类型等信息,因为我们plus(float x, float y)方法中有两个参数x和y,故我们将上图改成两个参数的序列

9
变成下图,对比一下方法plus(float x, float y)

我们返回manager.wsdl视图,选择output参数右边的箭头

我们在这里设置float plus(float x, float y)方法的返回值及其类型,因其返回值只有一个,我们只须把上面的out的类型改成我们方法中用的float,改后,如下图

有没有注意到上图左上角有个 图标,点击它,进入下图

好了,我们再回到manager.wsdl,在源代码视图里右键选“Validate”,对xml文档进行检验,如果有错误的,就根据需要修改。

好了,图形化编写的wsdl文档完成了,顺便说一下,方法是可以定义多个的

为简单起见,我们就先以刚才做定义的那个方法为例,看看,如何根据wsdl文件,自动生成Web Service的服务器端。
我们New一个Web Service

在Web Service type中选择“Top down Java Bean Web Service”

在Service definition中找到刚才写的那个manager.wsdl文件

Web Service对话框,将服务类型的滑块调到“Develop service”处

接下来,就next –> next –-> finish就行。它会自动生成Web Service服务端的接口和类,在类中,可找到我们定义的方法

20
我们只要修改方法plus的方法体,以实现我们要实现的功能即行。

回答不容易,希望能帮到您,满意请帮忙采纳一下,谢谢 !
全部回答
  • 1楼网友:千夜
  • 2021-03-01 01:09
可以通过修改配置节点 servicemetadata 的属性httpgeturl来改变获取元数据的 targetnamespace地址。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯