zoukankan      html  css  js  c++  java
  • WCF学习笔记——Day1:一个WCF demo

    Visual Studio2017,使用IIS托管。文中涉及一些WCF的基本概念,e.g.服务契约、托管等。可以先阅读《WCF服务编程》第一章。


     1.新建一个WCF服务库(WCF Service Library)

     有两个默认的文件:IService1.cs和Service1.cs

     IService.cs中定义了服务契约和数据契约。服务契约中定义了两个操作契约,在本demo中我们仅使用第一个,所以我就把第二个注释掉了。因为也没使用到数据契约,因此把数据契约也注释掉了。

    Service.cs实现了IService接口。
     
    2.服务创建好了之后,需要把服务托管起来,客户端才能使用该服务。WCF提供的三种托管服务的方式:IIS,自托管和WAS。在本demo中我们使用IIS。先确认系统已经配置了IIS。打开控制面板-程序-打开或关闭Windows功能,确认Internet信息服务这项已经选中。然后在开始菜单栏中,输入“IIS”就可以打开IIS管理器了。

     右键“网站”,选择“添加网站”

     

     添加好网页后,开启“目录浏览”。双击“目录浏览”,选择启用。

     配置一下应用池,否则会容易出现应用池版本低而报错的情况。

     
    3.回到Visual Studio,修改App.config配置文件,主要是修改基地址,然后右键发布服务,选择刚刚添加的网页。
    已经将Service1托管到IIS中了

     
    4.创建客户端(本demo使用控制台应用),获取服务。
    右键引用,添加服务引用。

     program.cs代码:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace Client
    {
        class Program
        {
            static void Main(string[] args)
            {
                using (ServiceReference1.Service1Client client = new ServiceReference1.Service1Client())
                {
                    Console.WriteLine("-----------------------Begin-------------------------");
                    Console.WriteLine(client.GetData(3));
                    Console.WriteLine("-----------------------End---------------------------");
                }
                Console.Read();
            }
        }
    }

    运行结果:

     demo代码:

    https://github.com/Larissa1990/WCFdemo_IIShost

    参考文献:

    https://www.cnblogs.com/xinhaijulan/archive/2010/11/14/1876989.html

    https://www.cnblogs.com/buchizaodian/p/9945170.html

    《WCF服务编程》

  • 相关阅读:
    笔记
    作用域及this指向案例总结
    笔记
    JS 事件(捕获和冒泡 兼容性写法)
    tab标签
    笔记
    JS入门(10.16)
    JS入门(10.15)
    关键渲染路径
    Practice1小学四则运算(改进)
  • 原文地址:https://www.cnblogs.com/larissa-0464/p/12161769.html
Copyright © 2011-2022 走看看