C# ASP.NET N分层/DDD体系结构与Windows服务软件体系结构之间是否存在差异?

C# ASP.NET N分层/DDD体系结构与Windows服务软件体系结构之间是否存在差异?,c#,architecture,windows-services,domain-driven-design,n-layer,C#,Architecture,Windows Services,Domain Driven Design,N Layer,我读了很多架构(N-Layered和DDD),但大多数文章都是关于网站架构的,主要是开发windows服务。 体系结构可以用同样的方式使用吗?当然可以,但Windows服务可能没有太多的UI层(如果有的话)。只是一种轻量级的runnner方法而已。软件架构中“层”的主要目标是分离关注点;程序逻辑应该与数据持久性和用户界面分开 Windows服务不会有UI,但通过逻辑分离功能,您仍然可以获得效率、可支持性并减少未来更改的影响。例如: Windows服务层:负责启动服务,处理定义的事件和异常-有点

我读了很多架构(N-Layered和DDD),但大多数文章都是关于网站架构的,主要是开发windows服务。

体系结构可以用同样的方式使用吗?

当然可以,但Windows服务可能没有太多的UI层(如果有的话)。只是一种轻量级的runnner方法而已。

软件架构中“层”的主要目标是分离关注点;程序逻辑应该与数据持久性和用户界面分开

Windows服务不会有UI,但通过逻辑分离功能,您仍然可以获得效率、可支持性并减少未来更改的影响。例如:

  • Windows服务层:负责启动服务,处理定义的事件和异常-有点类似于Web应用程序中的UI层,但显然没有UI
  • 业务层:执行处理和封装逻辑的类
  • 持久性层:将数据和状态的持久性抽象为数据库、xml、注册表等

因此,您所阅读的大多数Web体系结构概念都可以应用,并且大多数工具也可以用于Windows服务。

虽然这些服务不同,因为它们没有UI元素,但是有一些方法可以使用适用于(N层,DDD)的原则,即开发原则


例如,对于服务共享模式和合同,不是类,即它们是在接口上设计的,因此windows服务可以是基于REST的服务,也可以是WCF服务,但它也可以调用下面的存储库。

您的意思是您主要创建windows服务,您想知道DDD/N分层结构是否适合创建它们吗?我的意思是构建软件它本身使用的是架构,当然没有UI。