北京动点飞扬软件

近七年行业项目解决方案、专注WPF外包、SaaS外包、GoLang外包、H5外包、微信小程序外包、UE4外包、U3D外包等 案例丰富 — 您最值得信赖的合作伙伴 — 可签公司合同
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

1. 配置 IIS 绑定 IP地址

2. 在 SL 中引用 WebService

3. 在需要调用 WebService 的地方写下列代码:

image

WCF :

WCF
1BasicHttpBinding basicBinding = new BasicHttpBinding();
2
3CustomBinding binding = new CustomBinding(basicBinding);
4
5BindingElement binaryElement = new BinaryMessageEncodingBindingElement();
6
7// 删除原来 Elements 集合内的 TextMessageEncodingBindingElement
8
9binding.Elements.Remove(binding.Elements[0]);
10
11// 添加 BinaryMessageEncodingBindingElement
12
13binding.Elements.Insert(0, binaryElement);
14
15// wcf 地址
16
17EndpointAddress endPoint = new EndpointAddress("http://172.168.1.100/DynamicInvokeWCF.Web/DynWCF.svc");
18
19// 创建 wcf 客户端
20
21DynWCFClient client = (DynWCFClient)Activator.CreateInstance(typeof(DynWCFClient), binding, endPoint);
22
23client.DoWorkCompleted += new EventHandler<DoWorkCompletedEventArgs>(client_DoWorkCompleted);
24
25client.DoWorkAsync();
26
27

传统 WebService:

WebService
1BasicHttpBinding basicBinding = new BasicHttpBinding();
2
3CustomBinding binding = new CustomBinding(basicBinding);
4
5BindingElement binaryElement = new BinaryMessageEncodingBindingElement();
6
7EndpointAddress endPoint = new EndpointAddress("http://172.168.1.100/DynamicInvokeWCF.Web/Asmx.asmx");
8
9AsmxSoapClient client = (AsmxSoapClient)Activator.CreateInstance(typeof(AsmxSoapClient), binding, endPoint);
10
11client.HelloWorldCompleted += new EventHandler<HelloWorldCompletedEventArgs>(client_HelloWorldCompleted);
12
13client.HelloWorldAsync();
14
15

这样就可以动态的调用 webservice 了. 完全不需要 ServiceReferences.ClientConfig 文件了.