WCF - 创建 WCF 服务

使用 Microsoft Visual Studio 2012 创建 WCF 服务是一项简单的任务。下面给出了创建 WCF 服务的分步方法以及所有必要的编码,以便更好地理解该概念。

  • 启动 Visual Studio 2012。
  • 单击新项目,然后在 Visual C# 选项卡中选择 WCF 选项。
WCF 创建服务 1

创建的 WCF 服务执行基本的算术运算,如加法、减法、乘法和除法。主要代码位于两个不同的文件中 - 一个接口和一个类。

WCF 包含一个或多个接口及其实现的类。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;

namespace WcfServiceLibrary1 {
   // 注意:您可以使用"重构"菜单上的"重命名"命令,同时更改代码和配置文件中的接口名称"IService1"。

   [ServiceContract]
   Public interface IService1 {
      [OperationContract]
      int sum(int num1, int num2);

      [OperationContract]
      int Subtract(int num1, int num2);

      [OperationContract]
      int Multiply(int num1, int num2);

      [OperationContract]
      int Divide(int num1, int num2);
   }

   // 使用下面示例中所示的数据契约将复合类型添加到服务操作中。

   [DataContract]
   Public class CompositeType {
      Bool boolValue = true;
      String stringValue = "Hello ";

      [DataMember]
      Public bool BoolValue {
         get { return boolValue; }
         set { boolValue = value; }
      }

      [DataMember]   
      Public string StringValue {
         get { return stringValue; }
         set { stringValue = value; }
      }
   }
}

下面给出了其类背后的代码。

using System;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Runtime.Serialization;
usingSystem.ServiceModel;
usingSystem.Text;

namespace WcfServiceLibrary1 {
   // 注意:您可以使用"重构"菜单上的"重命名"命令同时更改代码和配置文件中的类名"Service1"。

   publicclassService1 :IService1 {
        // 此函数返回两个整数的总和
        
        publicint sum(int num1, int num2) {
        return num1 + num2;
        }
        
        // 此函数返回两个数字的减法。
        // 如果 num1 小于数字 2,则此函数返回 0
        
        publicint Subtract(int num1, int num2) {
        if (num1 > num2) {
        return num1 - num2;
        }
        else {
        return 0;
        }
        }
        
        // 此函数返回两个整数的乘法。
        publicint Multiply(int num1, int num2) {
        return num1 * num2;
        }
        
        // 此函数返回两个整数的整数值。
        // 如果 num2 为 0,则此函数返回 1。
        publicint Divide(int num1, int num2) {
        if (num2 != 0) {
        return (num1 / num2);
        } else {
        	return 1;
        }
        }
   }
}

要运行此服务,请单击 Visual Studio 中的"开始"按钮。

Wcf Creating Service4

运行此服务时,会出现以下屏幕。

Wcf Creating Service5

单击 sum 方法后,将打开以下页面。在这里,您可以输入任意两个整数,然后单击"调用"按钮。服务将返回这两个数字的总和。

Wcf Creating Service6 Wcf Creating Service7

与求和一样,我们可以执行菜单中列出的所有其他算术运算。以下是它们的快照。

单击"减法"方法后,将出现以下页面。输入整数,单击"调用"按钮,然后获取如下所示的输出 −

Wcf Creating Service8

单击"乘法"方法后,将出现以下页面。输入整数,单击"调用"按钮,并获取如下所示的输出 −

Wcf Creating Service9

单击 Divide 方法后,将显示以下页面。输入整数,单击"调用"按钮,并获取如下所示的输出 −

Wcf Creating Service10

调用服务后,您可以直接从此处在它们之间切换。

Wcf Creating Service11