搭建⼀个WebService接⼝环境(SAPPO开发⼆)
开发⼯具: VS2017 framework4.0
服务⽅:我们⾃⼰建⼀个WebService接⼝服务,等待调研。
请求⽅:Soap UI软件作客户端来调⽤WS接⼝。
⼀、⽤VS2017建⼀个WCF的DLL:
新建⼀个WCF项⽬,什么都不改动它,⽤它⾃带的代码事例就好:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
namespace WcfService1
{
// 注意: 使⽤“重构”菜单上的“重命名”命令,可以同时更改代码、svc 和配置⽂件中的类名“Service1”。
/
/ 注意: 为了启动 WCF 测试客户端以测试此服务,请在解决⽅案资源管理器中选择 Service1.svc 或 Service1.svc.cs,然后开始调试。 public class Service1 : IService1
{
public string GetData(int value)
{
return string.Format("You entered: {0}", value);
}
public CompositeType GetDataUsingDataContract(CompositeType composite)
{
if (composite == null)
{
throw new ArgumentNullException("composite");
}
if (composite.BoolValue)
{
composite.StringValue += "Suffix";
}
return composite;
}
}
}
⾃带的事例接收⼀个整型变量为参数,返回⼀个字符串结果。
⽣成这个WCF的DLL,在bin⽬录⾥⾯:
⼆、作⼀个winform桌⾯应⽤程序为属主,让这个WCF的DLL作为寄⽣⾍在上⾯⼯作:
(不想这么恶⼼?DLL动态链接库不能直接运⾏,要么放到IIS的web属主容器中,要么放到应⽤程序的进程容器中)建⼀个WINFORM程序:
添加有关于WEBSERVICE 的引⽤:
在把第⼀步我们作的WcfService1.dll也引⽤进来,注意选“复制”:
加⼏⾏代码,启动WCF寄⽣:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Web.Services;
using System.Windows.Forms;
using System.ServiceModel;
namespace WindowsFormsApp1
{
public partial class Form1 : Form
{
private ServiceHost host = null;
public Form1()
{
InitializeComponent();
try
{
host = new ServiceHost(typeof(WcfService1.Service1));//WcfDemo.Service1 为引⽤的dll中的服务 host.Open();//启动服务调用webservice服务
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
如果WINFORM没有配置⽂件fig,需要添加⼀个:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论