WCF - Creating WCF Service
http://www.tutorialspoint.com/wcf/wcf_creating_service.htm
Creating a WCF service is a simple task using Microsoft Visual Studio 2012. Given below is the step-by-step method for creating a WCF service along with all the requisite coding, to understand the concept in a better way.
在VS2012中创建一个wcf服务是一个简单的任务。为了更好的理解之前的概念,按照下面的方法,一步一步的创建一个wcf服务,同时也包含了所有必须的编码
- Launch Visual Studio 2012. 首先启动vs2012
- Click on new project, then in Visual C# tab, select WCF option. 新建项目,然后选择模板-->C#-->WCF 右侧选择wcf库

A WCF service is created that performs basic arithmetic operations like addition, subtraction, multiplication, and division. The main code is in two different files – one interface and one class.
A WCF contains one or more interfaces and its implemented classes.
我们创建一个执行基础算数运算的wcf服务:实现加减乘除。主要的代码在2个不同的文件中,一个接口另外是类
wcf包含至少一个接口以及实现了接口的类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text; namespace WcfServiceLibrary1
{
// NOTE: You can use the "Rename" command on the "Refactor" menu to
// change the interface name "IService1" in both code and config file
// together.
[ServiceContract]
public interface IService1
{
[OperationContract]
int Sum(int numer1, int number2); [OperationContract]
int Substract(int number1, int number2); [OperationContract]
int Multiply(int number1, int number2); [OperationContract]
int Divide(int number1, int number2);
} // Use a data contract as illustrated in the sample below to add
// composite types to service operations.
[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; }
}
}
}
The code behind its class is given below. 实现了接口的类如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text; namespace WcfServiceLibrary1
{
// NOTE: You can use the "Rename" command on the "Refactor" menu to
// change the class name "Service1" in both code and config file
// together.
public class Service1 : IService1
{
/// <summary>
/// This Function Returns summation of two integer numbers
/// </summary>
/// <param name="number1"></param>
/// <param name="number2"></param>
/// <returns></returns>
public int Sum(int number1, int number2)
{
return number1 + number2;
} /// <summary>
/// This function returns subtraction of two numbers.
/// If number1 is smaller than number2 then this function returns 0
/// </summary>
/// <param name="number1"></param>
/// <param name="number2"></param>
/// <returns></returns>
public int Substract(int number1, int number2)
{
if (number1 > number2)
{
return number1 - number2;
}
else
{
return ;
}
} /// <summary>
/// This function returns multiplication of two integer numbers.
/// </summary>
/// <param name="number1"></param>
/// <param name="number2"></param>
/// <returns></returns>
public int Multiply(int number1, int number2)
{
return number1 * number2;
} /// <summary>
/// This function returns integer value of two integer number.
/// If num2 is 0 then this function returns 1
/// </summary>
/// <param name="number1"></param>
/// <param name="number2"></param>
/// <returns></returns>
public int Divide(int number1,int number2)
{
if (number2 != )
{
return number1 / number2;
}
else
{
return ;
}
}
}
}
To run this service, click the Start button in Visual Studio.

While we run this service, the following screen appears.
服务运行起来之后,会出现以下的界面。 双击某一个函数来执行相应的操作

On clicking the sum method, the following page opens. Here, you can enter any two integer numbers and click on the Invoke button. The service will return the summation of those two numbers.
双击了Sum方法后,会出现下面的页面。可以输入number和number2的值,然后点击调用。然后服务会返回2个数字的和。


Like summation, we can perform all other arithmetic operations which are listed in the menu. And here are the snaps for them.
The following page appears on clicking the Subtract method. Enter the integer numbers, click the Invoke button, and get the output as shown here:

The following page appears on clicking the Multiply method. Enter the integer numbers, click the Invoke button, and get the output as shown here:

The following page appears on clicking the Divide method. Enter the integer numbers, click the Invoke button, and get the output as shown here:

Once the service is called, you can switch between them directly from here.
一旦某一个方法的服务被调用后,可以直接通过tab和切换它们,也可以重新打开一个新的

WCF - Creating WCF Service的更多相关文章
- wcf和web service的区别
1.WebService:严格来说是行业标准,不是技术,使用XML扩展标记语言来表示数据(这个是夸语言和平台的关键).微软的Web服务实现称为ASP.NET Web Service.它使用Soap简单 ...
- WCF和Web Service的 区(guan)别(xi)
参考文献:http://social.microsoft.com/Forums/zh-CN/c06420d1-69ba-4aa6-abe5-242e3213b68f/wcf-webservice 之前 ...
- WCF与 Web Service的区别是什么?各自的优点在哪里呢?
这是很多.NET开发人员容易搞错的问题.面试的时候也经常遇到,初学者也很难分快速弄明白 Web service: .net技术中其实就指ASP.NET Web Service,用的时间比较长,微软其实 ...
- 跟我一起学WCF(13)——WCF系列总结
引言 WCF是微软为了实现SOA的框架,它是对微乳之前多种分布式技术的继承和扩展,这些技术包括Enterprise Service..NET Remoting.XML Web Service.MSMQ ...
- Learing WCF Chapter1 WCF Services
WCF ServicesWCF services are the new distributed boundary in an enterprise application—with an empha ...
- WCF - Consuming WCF Service
WCF services allow other applications to access or consume them. A WCF service can be consumed by ma ...
- WCF - Hosting WCF Service
After creating a WCF service, the next step is to host it so that the client applications can consum ...
- WCF - Hosting WCF Service 四种托管方式
https://www.tutorialspoint.com/wcf/wcf_hosting_service.htm After creating a WCF service, the next st ...
- 使用WCF 创建 Rest service
REST SERVICE 允许客户端修改url路径,并且web端功过url 请求数据. 他使用http协议进行通讯,想必大家都知道 . 并且我们可以通过设置进行数据类型转换, 支持XML,JSON 格 ...
随机推荐
- Ext.Net 布局
Ext.Net 布局 Panel布局类有10种:容器布局,自适应布局,折叠布局,卡片式布局,锚点布局,绝对位置布局,表单布局,列布局,表格布局,边框布局 1,Ext.layout.Cont ...
- zookeeper实现商品秒杀抢购
package com.test; import java.io.IOException; import java.util.List; import java.util.concurrent.Cyc ...
- ###Maintainable C++
点击查看Evernote原文. #@author: gr #@date: 2014-08-15 #@email: forgerui@gmail.com 记录一些标准规范.让自己的编码更可读,更可维护. ...
- Android系统简介(上):历史渊源
上个月,看到微信的一系列文章,讲到Linux的鼻祖-李纳斯的传记<Just for Fun>, 其人神乎其能, 其人生过程非常有趣,值得每个程序员细细品味. 而实际上,对我而已,虽然做软件 ...
- String练习
/*1,模拟一个trim方法,去除字符串两端的空格. 思路: 1,判断字符串第一个位置是否是空格,如果是继续向下判断,直到不是空格为止. 结尾处判断空格也是如此. 2, ...
- HDU 2993 MAX Average Problem(斜率优化DP)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2993 题目大意:给定一个长度为n(最长为10^5)的正整数序列,求出连续的最短为k的子序列平均值的最大 ...
- 【nodemailer】 初试
nodemailer 是什么? 简单的讲nodemailer就是用来发送邮件的.最近的一个项目需要向客户的注册邮箱发送验证连接,研究了一下. 刚开始我以为nodemailer还可以用来接收邮件,看了好 ...
- 关于使用工具类org.apache.commons.collections.ListUtils合并List的问题
今天在做项目时,需要将几个List进行合并,于是就用到了apache提供关于List操作的工具类ListUtils,但是在使用的过程中发现一些问题. public static void main(S ...
- Unix/Linux之命令备忘录
ps:是显示瞬间进程的状态,并不动态连续 kill:用于杀死进程或者给进程发送信号 // 在Linux下查看所有java进程命令 ps -ef | grep java: // 停止所有java进程命 ...
- make menuconfig出错需要安装文件
$ make menuconfig *** Unable to find the ncurses libraries or the *** required header files. *** 'ma ...