using System;
using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.ServiceModel;namespace Sleven.WcfConHost
{ /// <summary> /// wcf ServiceHost 添加的服务类 /// </summary> public class Service { /// <summary> /// 服务类型(接口);面向接口编程 /// </summary> Type ServiceType { get; set; }/// <summary>
/// 提供服务的主机,默认为null /// </summary> ServiceHost Host { get; set; }/// <summary>
/// Http服务配置, 默认为new HttpServiceConfig(); /// </summary> HttpServiceConfig HttpServiceConfig{get;set;} }/// <summary>
/// http 服务配置 /// </summary> public class HttpServiceConfig { /// <summary> /// 是否是HTTP服务 /// </summary> /// <value> /// <c>true</c> if this instance is HTTP; otherwise, <c>false</c>. /// </value> public bool IsHttp { get; set; }/// <summary>
/// HTTP服务端口号 /// </summary> /// <value> /// The port. /// </value> public int Port { get; set; } } /// <summary> /// TCP 服务配置 /// </summary> public class TcpServiceConfig {}/// <summary>
/// 服务配置 /// </summary> public class ServiceConfig {/// <summary>
/// 服务配置类型 /// </summary> ServiceConfigType ServiceConfigType { get; set; }/// <summary>
/// 服务端口号 /// </summary> /// <value> /// The port. /// </value> public int Port { get; set; }}
/// <summary>
/// 生成Wcf相关服务 /// </summary> public class LoadService {private static readonly List<Service> Services = new List<Service>();
static LoadService()
{ //TODO:新增服务,在此新增服务,按此格式//审核
// Services.Add(new Service { Type = typeof(IAuditService), ImplType = typeof(AuditService), Name = AuditServiceName }); //客户端验证 //Services.Add(new Service { Type = typeof(IClientService), ImplType = typeof(ClientService) }); }public static List<Service> GServices
{ get { return Services; } } }/// <summary>
/// 服务配置类型枚举 0:NetTcp; 1:BasicHttp; 2:WsHttp /// </summary> public enum ServiceConfigType : short { /// <summary> /// NetTcp,对应NetTcpBinding /// </summary> NetTcp = 0, /// <summary> /// BasicHttp,对应BasicHttpBinding /// </summary> BasicHttp = 1, /// <summary> /// BasicHttp,对应WsHttpBinding /// </summary> WsHttp = 2 }}