0

所以我正在开发一个非常酷(而且非常大)的 n 层应用程序。

基本上我有以下程序集:


Domain.Contracts

服务
Services.Contracts

Presentation.Admin
Presentation.Web
Presentation.Core(在 Admin 和 Web 之间共享)
我可以实现 Presentation.Core.Contracts

我正在努力解决的主要问题是不同层之间的名称冲突。 IE。

Services.Contracts.AccountServicesRequest
域.Contracts.AccountServicesRequest

我对服务名称有同样的问题(在这种情况下,我只是将类用作服务而不是 WCF 等)。IE:

Services.Contracts.IAccountService
域.Contracts.IAccountService

我现在通过在域层 IxxxServiceHandler 中创建所有“服务处理程序”来解决这个问题,这给了我这个:

Services.Contracts.IAccountService
域.Contracts.IAccountServiceHandler

但是,对于在层之间来回传递的对象,我无法解决这个问题。这似乎通过我的解决方案散布在很多地方。我只是想看看是否有人遇到过同样的问题。如果是这样,您是如何解决它们的?

4

1 回答 1

0

是的,我遇到了这个问题,但我每次都很快解决了。

一个好的类命名约定会有所帮助。避免在跨多个层的类中使用相同的名称。

或者,您可以使用命名空间别名,以便您使用,例如:

services::IAccountService
domain::IAccountService

这有帮助吗?

于 2009-12-10T12:29:36.827 回答