zoukankan      html  css  js  c++  java
  • 学习WCF之——wcf程序的创建

      这是我参考的主要资料——wcf学习之旅:http://www.cnblogs.com/artech/archive/2007/02/26/656901.html

      首先,如博客上介绍的一样,创建空白的项目解决方案:两类库(Sercive、Constract),两控制台(Client,Host。前者模拟客户端调用服务方法;后者实现服务的寄宿)。下面分别介绍这四个添加项目:

      1、Constract。服务契约,引用System.ServiceMode程序集。把Constract放在前面介绍,是因为WCF采用基于契约的交互方式实现服务的自治的。而一般是通过接口形式定义服务契约,所以在该项目下创建接口ICaculator。 

    2、Service。创建服务,实现接口ICaculator。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Contract;
    namespace Service
    {
        public class CalculatorService:IContracts
        {
            public double Add(double x, double y)
            {
                return x + y;
            }
            public double Subtract(double x, double y)
            {
                return x - y;
            }
            public double Multiply(double x, double y)
            {
                return x * y;
            }
            public double Divide(double x, double y)
            {
                return x / y;
            }
        }
    }
    CalculatorService

    3、Host。WCF服务需要依存一个运行着的进程(宿主),服务寄宿就是为服务指定一个宿主的过程。要点:WCF是一个基于消息的通信框架,采用基于终结点(Endpoint)的通信手段。终结点三要素:地址(address),绑定(binding),契约(Constract)。

       至此时,你可以编译一下项目,设Host为启动项,启动,打开http://localhost:8080/CalculatorService/metadata,看下是否寄宿成功。

       如果你会出现这样的错误:

    就用管理员权限打开vs。

    4、Client。客户端调用服务。在Host.exe运行的情况下,右击Client项目,添加服务引用

        

  • 相关阅读:
    操作系统:进程间的相互作用(多线程基础)
    一个互联网研发团队的标准配置
    一个电商项目的功能模块梳理2
    一个电商项目的功能模块梳理2
    一个电商项目的功能模块梳理
    一个电商项目的功能模块梳理
    CTO、技术总监、首席架构师的区别
    CTO、技术总监、首席架构师的区别
    论代码稳定
    论代码稳定
  • 原文地址:https://www.cnblogs.com/marryZheng/p/4681632.html
Copyright © 2011-2022 走看看