您的位置:首页 > 编程语言 > C#

第一个WCF程序(一)

2014-03-15 21:43 239 查看
1. 新建立空白解决方案,并在解决方案中新建项目,项目类型为:WCF服务应用程序。

2.删除系统生成的两个文件IService1.cs与Service1.svc。







3.添加自定义的 "WCF服务" 文件 Login.svc,此时vs2010会自动生成WCF接口文件ILogin.cs,我们在ILogin中定义WCF方法checkLogin,在ILogin.svc.cs对该接口的方法进行实现。






代码如下:


using System;

using System.Collections.Generic;

using System.Linq;

using System.Runtime.Serialization;

using System.ServiceModel;

using System.Text;

namespace WcfService

{

    // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码和配置文件中的接口名“ILogin”。

    [ServiceContract]

    public interface ILogin

    {

        [OperationContract]

        bool checkLogin(string userName,string userPassword);

    }

}

====================================================================================================

using System;

using System.Collections.Generic;

using System.Linq;

using System.Runtime.Serialization;

using System.ServiceModel;

using System.Text;

namespace WcfService

{

    // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码、svc 和配置文件中的类名“Login”。

    // 注意: 为了启动 WCF 测试客户端以测试此服务,请在解决方案资源管理器中选择 Login.svc 或 Login.svc.cs,然后开始调试。

    public class Login : ILogin

    {

        public bool checkLogin(string userName, string userPassword)

        {

            if (userName!=""&& userPassword!="")//只为了测试

            {

                return true;

            }

            return false;

        }

    }

}

大家可以看到,在WCF中的接口与普通接口的区别只在于两个上下文,其他的和我们正常学习的接口一样。定义这个上下文要添加System.ServiceModel的引用。
[ServiceContract],来说明接口是一个WCF的接口,如果不加的话,将不能被外部调用。

[OperationContract],来说明该方法是一个WCF接口的方法,不加的话同上。 

4.此时我们的第一个WCF服务程序就建立好了,将Login.svc“设为起始页”,然后F5运行一下试试,如下图所示,VS2012自动调用了WCF的客户端测试工具以便我们测试程序:

我们双击上图中的 checkLogin() 方法,出现如下图:



在请求窗口中的值中输入参数,然后点击“调用”,在响应窗口中会出现返回值;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息