如何快速实现WCF单向服务

开发 开发工具
其实,WCF单向服务的创建并不麻烦,只需按照我们今天在文中给出的相应步骤来操作,就能轻松实现这一服务的创建。

WCF服务的应用,需要我们通过不断地实践去积累应用技巧来达到一个熟练应用的地步。那么首先还是需要我们从基础的知识开始。今天就先一起来了解一下有关WCF单向服务的基本创建方式。#t#

1、打开Visual Studio 2008。

2、新建项目 à 选择项目类型:Visual C#下的WCF à WCF服务库(WCF Service Library) à 确认项目名称以后,点击“确定”。(该Sample中使用WcfServiceLibrary1作为项目的名称)

3、打开IService1.cs文件,并修改其中的内容,完整的WCF单向服务创建代码如下所示。

 

  1. using System.Runtime.Serialization;  
  2. using System.ServiceModel;  
  3. namespace WcfServiceLibrary1  
  4. {  
  5. [ServiceContract]  
  6. public interface IService1  
  7. {  
  8. [OperationContract]  
  9. string GetData(int value);  
  10. [OperationContract]  
  11. CompositeType GetDataUsingDataContract(CompositeType composite);  
  12. [OperationContract(IsOneWay=true)]  
  13. void TestMethod(string paraInput); // 单向服务不允许有返回值  
  14. }  
  15. [DataContract]  
  16. public class CompositeType{  
  17. bool boolValue = true;  
  18. string stringValue = "Hello ";  
  19. [DataMember]  
  20. public bool BoolValue  
  21. {  
  22. get { return boolValue; }  
  23. set { boolValue = value; }  
  24. }  
  25. [DataMember]  
  26. public string StringValue  
  27. {  
  28. get { return stringValue; }  
  29. set { stringValue = value; }  
  30. }  
  31. }  

 

4、打开Service1.cs,并修改其中的内容,完整代码如下所示。

 

  1. namespace WcfServiceLibrary1  
  2. {  
  3. public class Service1 : IService1  
  4. {  
  5. public string GetData(int value)  
  6. {  
  7. System.Threading.Thread.Sleep(5000); // 单向服务的对比测试方法  
  8. return string.Format("You entered: {0}", value);  
  9. }  
  10. public CompositeType GetDataUsingDataContract(CompositeType composite)  
  11. {  
  12. if (composite.BoolValue)  
  13. {  
  14. composite.StringValue += "Suffix";  
  15. }  
  16. return composite;  
  17. }  
  18. public void TestMethod(string paraInput)  
  19. {  
  20. System.Threading.Thread.Sleep(5000); // 单向服务的测试方法  
  21. }  
  22. }  

 

5、生成WCF单向服务项目。

6、添加一个Windows窗口程序。

7、为Windows窗口程序添加一个服务引用 à 在“添加服务引用”窗口中点击“发现”就显示出本机模拟的一个WCF服务程序 à 点击“确定”,将其添加到程序中。

8、在窗口中添加一个按钮à在按钮事件中添加如下代码。

 

  1. ServiceReference1.Service1Client sc = new 
    WindowsFormsApplication1.ServiceReference1.Service1Client();  
  2. MessageBox.Show(sc.GetData(3)); 

 

9、在窗口中再添加一个按钮,做对比试验à在按钮事件中添加如下代码:

 

  1. ServiceReference1.Service1Client sct = 
    new WindowsFormsApplication1.ServiceReference1.Service1Client();  
  2. sct.TestMethod("这是一个单项服务传递的测试"); 

 

10、实例代码编写完成,运行程序查看效果。

点击按钮1:需要等待5秒钟后才接受到从服务器端传回的值。

点击按钮2:无需等待服务器端应答。

以上就是我们为大家介绍的WCF单向服务的所有创建步骤。

责任编辑:曹凯 来源: CSDN
相关推荐

2010-02-25 13:18:36

WCF单向协定

2010-03-01 15:08:05

WCF单向操作

2009-12-22 16:14:01

WCF服务元数据

2009-12-21 10:09:26

WCF创建客户端服务对

2009-12-08 15:06:33

WCF传输DataSe

2010-02-26 16:05:14

寄宿WCF服务

2010-02-25 10:10:29

WCF使用Header

2009-12-22 09:11:31

WCF双向通信

2010-02-24 10:41:28

WCF服务保护

2010-02-24 15:42:03

WCF服务端安全

2009-11-09 15:06:34

WCF序列化

2010-02-25 16:52:12

引用WCF服务

2009-12-04 17:47:04

WCF 服务

2010-03-01 14:01:50

WCF服务异步调用

2010-02-26 08:59:10

WCF服务宿主程序

2009-11-05 09:51:14

WCF基础

2010-02-22 13:56:35

WCF服务契约

2010-02-22 14:18:34

WCF服务验证

2010-02-24 16:58:14

WCF Session

2009-11-06 09:30:35

WCF服务框架
点赞
收藏

51CTO技术栈公众号