wcf host service

WCF服务配置与实现
本文介绍了一种基于WCF的服务配置与实现方法,包括服务类定义、HTTP服务配置及TCP服务配置等内容,并通过示例展示了如何加载和注册WCF服务。

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
}

}

转载于:https://www.cnblogs.com/lanfeinigal/p/3163953.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值