三层架构中的层之间的通信

时间:2014-06-03 18:11:04

标签: .net architecture

我有一个非常基本的问题。在三层体系结构中,每个层都部署在单独的物理计算机上。例如,presentation.dll部署在机器A上,business.dll部署在机器B上,dataAccess.dll部署在机器C上。我的问题是

  1. 这三层如何相互沟通?

  2. 我们可以像往常一样在Visual Studio IDE中添加一个dll的引用吗?

  3. 请帮忙。

2 个答案:

答案 0 :(得分:1)

你有选择。最大和最强大的通信系统将是Windows Communication Foundation,它可以配置为进行多种类型的通信。

更简单的解决方案是WebAPI设置。它不太灵活,但也不那么复杂。

答案 1 :(得分:1)

那些确实是2个不那么基本的问题:

  1. .net标准方法是使用WCF。恕我直言,我建议使用NetTCPBinding,因为这一切都将发生在同一个内网中吗?在这里,您必须解决许多问题,例如安全性(您是要在每个层进行身份验证吗?您将使用哪种身份验证机制?)。

  2. 当您使用WCF时,您将添加对您可以使用的服务的引用,并在您的代码中将其视为任何外部DLL,但是您将使用将在下一层中部署的实际类的代理