博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
三种调用WCF服务的代码
阅读量:5364 次
发布时间:2019-06-15

本文共 2321 字,大约阅读时间需要 7 分钟。

 wsHttpBinding,Massage UserName认证

static void Main(string[] args)        {            //使用服务引用方式生成的Client调用服务,使用自动生成的配置文件 WSHttpBinding_IService            using (ServiceClient client = new ServiceClient())            {                client.ClientCredentials.UserName.UserName = "name";                client.ClientCredentials.UserName.Password = "123";                string result = client.Hello("SomeOne");                Console.WriteLine(result);            }            //使用配置方件 WSHttpBinding_IService_1 创建通道调用服务            using (ChannelFactory
ChannelFactory = new ChannelFactory
("WSHttpBinding_IService_1")) {          var loginCredentials = ChannelFactory.Endpoint.Behaviors.Find
(); loginCredentials.UserName.UserName = "name"; loginCredentials.UserName.Password = "123"; var proxy = ChannelFactory.CreateChannel(); using (proxy as IDisposable) { var result = proxy.Hello("SomeOne"); Console.WriteLine(result); } } //纯代码方式创建通道调用服务 WSHttpBinding binding = new WSHttpBinding(SecurityMode.Message); binding.Security.Message.ClientCredentialType = MessageCredentialType.UserName; binding.ReceiveTimeout = new TimeSpan(0, 5, 0); EndpointAddress address = new EndpointAddress(new Uri("http://192.168.126.129:12122/"), EndpointIdentity.CreateDnsIdentity("ServiceCA")); using (ChannelFactory
channelFactory = new ChannelFactory
(binding, address)) { ClientCredentials loginCredentials = channelFactory.Endpoint.Behaviors.Find
(); loginCredentials.UserName.UserName = "name"; loginCredentials.UserName.Password = "123"; loginCredentials.ServiceCertificate.Authentication.CertificateValidationMode = System.ServiceModel.Security.X509CertificateValidationMode.None; //不认证服务证书 Service_Contracts.IService proxy = channelFactory.CreateChannel(); proxy = channelFactory.CreateChannel(); using (proxy as IDisposable) { var result = proxy.Hello("SomeOne"); Console.WriteLine(result); } }; Console.ReadKey(); }

 

转载于:https://www.cnblogs.com/TianPing/p/10089739.html

你可能感兴趣的文章
UIScrollView —— 缩放实现案例(二)
查看>>
【Qt】Qt Linguist介绍【转】
查看>>
sim usim Uim 区别
查看>>
网页中插入透明Flash的方法和技巧
查看>>
动态内存申请函数选择(realloc、malloc 、alloca、 calloc)
查看>>
获取元素属性get_attribute
查看>>
视觉设计师的进化
查看>>
Python/jquery
查看>>
【BZOJ】【2132】圈地计划
查看>>
Lua 语言基本语法
查看>>
ARM 的Thumb状态测试
查看>>
windows下读取utf-8文件
查看>>
apache 启动不了的排查方法
查看>>
Java有没有goto?
查看>>
(转)makefile 的用法
查看>>
求不相邻金币相加和的最大值--动态规划1
查看>>
[转][osg]探索未知种族之osg类生物【目录】
查看>>
四十九. Zabbix报警机制 、 Zabbix进阶操作 、 监控案例
查看>>
元类中__new__ 与 __init__的区别--day27
查看>>
占小狼的简书博客
查看>>