WCF 入门笔记

一、新建 WCF 工程

为了便于理解,删除系统给的示例服务 Service1:

二、新建 WCF 服务

右键项目 -> 添加 ->  WCF 服务,弹出对话框:

会生成两个文件,一个接口文件,一个 WCF 服务文件:

三、编写 WCF 服务

打开 IWeather.cs ,可以看到:

[ServiceContract] 声明下面的类在程序中定义一个 WCF 契约。

[OperationContract] 声明下面的方法是契约里的一个操作。

namespace WCF_test
{
    // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码和配置文件中的接口名“IWeather”。
    [ServiceContract]
    public interface IWeather
    {
        [OperationContract]
        void DoWork();
    }
}

修改 void DoWork() 为 string GetWeather(string city),后面我们使用这个接口的实现去获取天气。

打开 Weather.cs ,实现 GetWeather 方法:

namespace WCF_test
{
    // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码、svc 和配置文件中的类名“Weather”。
    // 注意: 为了启动 WCF 测试客户端以测试此服务,请在解决方案资源管理器中选择 Weather.svc 或 Weather.svc.cs,然后开始调试。
    public class Weather : IWeather
    {
        public string GetWeather(string city)
        {
            string weather = "";
            switch (city)
            {
                case "WuXi": weather = "Sun"; break;
                case "XiAn": weather = "Windy"; break;
                case "ShangHai": weather = "Snow"; break;
                case "ZhuHai": weather = "Rainbow"; break; 
            }
            return weather;
        }
    }
}

修改好后,编译一下,确认没有错误,进行下一步。

三、修改 WCF 配置文件

虽然已经写好了 WCF 服务,但是为了能够让 ServiceHost 理解我的服务,要在配置文件里配置、注册一下。

右键 Web.config -> 编辑 WCF 配置:

在 WCF 配置编辑器中:

1,右键服务 -> 新建服务 -> 选择刚才编译的 dll 文件:

2,右键终结点 -> 新建服务终结点 -> 在 Contract 里选择刚才编译的 dll 文件:

3,高级 -> 服务行为 -> 空名称,给该服务行为取个名字,随便取,这里取 cxk:

4,Ctrl + S ,保存本次编辑,再次打开 Web.config 文件,就能看到编辑后的配置信息:

四、新建项目,承载此 WCF 服务

 

发表评论

Powered by WordPress | Theme Revised from Doo

苏ICP备18047621号

Copyright © 2017-2024 追光者博客