前言:今天我主要写的是关于头消息的一个用处验证用户信息

下面我画一个图,可以先看图

我们一起学习WCF 第三篇头消息验证用户身份

第一步:我们先开始做用户请求代码

首先:创建一个可执行的上下文对象块并定义内部传输的通道

 using (OperationContextScope scope = new OperationContextScope(userClient.InnerChannel))

然后:创建头消息 要发送的SOAP传输的内容

MessageHeader myHeaderUid = MessageHeader.CreateHeader(
"header", "uid", UId);

header:标头 XML 元素的本地名称(名字可以任意取,但是必须和服务器端保持一致)

uid:标头 XML 元素的命名空间 URI(名字可以任意取,但是必须和服务器端保持一致)

UId:要传送的信息(是一个object类型的值)

最后:把创建要传输的头内容添加到传输的对象中

OperationContext.Current.OutgoingMessageHeaders.Add(myHeaderUid);

ok这样就完成客户端的编码

 1  ValidUserClient userClient =new ValidUserClient();
 2             while (true)
 3             {
 4                 Console.Write("用户名:");
 5                 string UId = Console.ReadLine();
 6                 Console.Write("密码:");
 7                 string Pwd = Console.ReadLine();
 8                 using (OperationContextScope scope = new OperationContextScope(userClient.InnerChannel))//创建一个可执行的上下文对象块并定义内部传输的通道
 9                 {
10                     MessageHeader myHeaderUid = MessageHeader.CreateHeader(
11                       "header", "uid", UId);
12                     MessageHeader myHeaderPwd= MessageHeader.CreateHeader(
13                            "header", "pwd", Pwd);
14                     OperationContext.Current.OutgoingMessageHeaders.Add(myHeaderUid);
15                     OperationContext.Current.OutgoingMessageHeaders.Add(myHeaderPwd);
16                     Console.WriteLine(userClient.User());
17                 }               
18             }
客户端编码

相关文章: