.Net WCF如何分离内部和外部web服务

.Net WCF如何分离内部和外部web服务,.net,web-services,wcf,visual-studio,wcf-binding,.net,Web Services,Wcf,Visual Studio,Wcf Binding,我们有以下物理架构: Web前端在防火墙DMZ环境中运行 WCF服务层运行在另一个防火墙DMZ环境中 Biztalk ESB层运行在我们的核心LAN上 后台服务应用层也运行在我们的核心局域网上 WCF层是UI和ESB/后台层之间的桥梁 UI->WCF是通过https的 WCF业务是通过net.tcp进行的 因此,这需要外部和内部服务使用不同的端点 问题是,如何最好地将它们分开 1) 一个包含内部和外部endpoint.svc类的WCF项目,web.config混合了两种端点配置 2) 内部和外部

我们有以下物理架构:

Web前端在防火墙DMZ环境中运行

WCF服务层运行在另一个防火墙DMZ环境中

Biztalk ESB层运行在我们的核心LAN上

后台服务应用层也运行在我们的核心局域网上

WCF层是UI和ESB/后台层之间的桥梁

UI->WCF是通过https的

WCF业务是通过net.tcp进行的

因此,这需要外部和内部服务使用不同的端点

问题是,如何最好地将它们分开

1) 一个包含内部和外部endpoint.svc类的WCF项目,web.config混合了两种端点配置

2) 内部和外部端点的WCF项目

我坚持使用1

有一个带有服务合同的项目,这些合同的不同实现取决于它们是否需要解决身份验证/防火墙问题

不同的实现将具有不同的名称和地址绑定,以及所选的服务实现

您可能有一个不同的项目来解决基础架构问题,比如为哪种基础架构布局选择哪种服务实现