• WCF发布多个服务


    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using WcfServiceLibrary1;
    using System.ServiceModel.Configuration;
    using System.Configuration;
    using System.Reflection;
    using System.ServiceModel;
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                //将指定的客户端配置文件作为Configuration打开
                Configuration conf = ConfigurationManager.OpenExeConfiguration(Assembly.GetCallingAssembly().Location);
                ServiceModelSectionGroup svcmode = (ServiceModelSectionGroup)conf.GetSectionGroup("system.serviceModel");
    
                ServiceHost host = null;
                foreach (ServiceElement el in svcmode.Services.Services)
                {
                    //string serviceNameSpace = el.Name.Substring(0, el.Name.LastIndexOf('.'));
                    string serviceNameSpace = el.Name.Split('.')[0];
                    Type svcType = Type.GetType(el.Name + "," + serviceNameSpace);
                    if (svcType == null)
                        throw new Exception("Invalid Service Type " + el.Name + " in configuration file.");
                    host = new ServiceHost(svcType);
    
                    host.Opened += delegate
                    {
                        Console.WriteLine(el.Name + "服务已经启动了");
                    };
    
                    host.Open();
                }
             
                   Console.Read();
            }
        }

    这里注意引入System.Configuration命名空间

    运行结果:

  • 相关阅读:
    16平衡树
    15二叉检索树
    11用户权限
    10触发器
    8函数
    8存储过程
    linux下如何进入单用户模式
    RHEL6.4 字符模式下安装图形界面图文教程
    杂记
    Java内存管理(一):深入Java内存区域
  • 原文地址:https://www.cnblogs.com/smiler/p/3215046.html
Copyright © 2020-2023  润新知