在涉及utils和其他帮助类时,我正确地命名我的类和服务时遇到问题。
您将如何构建以下内容:
EventService.cs
EventServiceUtils.cs
EventServiceValidators.cs
EventServiceCoordinator.cs
等...
我有多项服务与上述服务具有相同的需求。 一种想法是将所有这些分成合适的命名空间,使其看起来像这样:
Services.EventService.EventService.cs //(the actual service)
Services.EventService.Validators.DateValidator.cs
Services.EventService.Validators.ParticipantValidator.cs
Services.EventService.Coordinators.ParticipantCoordinator.cs
Services.EventService.ExtensionMethods.Extensions.cs
等等。每个命名空间当然是一个单独的文件夹。 但这并不是100%的感觉,因为其他服务中可能有更多的DateValidator,这很容易导致不必要的引用。
并且Services.EventService.EventService.cs也包含命名空间中的类名,这也不好。您可以使用Services.Event.EventService.cs,但当然已经有一个具有该名称的实体。
这是域模型。
答案 0 :(得分:1)
您可以在单独命名空间中命名为例如多个服务中使用的验证程序(以及其他类)。 CommonValidators。
您可以更改EventService.cs
的名称,而不是更改名称空间的名称 - 可能是Main.cs
或Default.cs
?
我假设您的服务在接口中有合同,因此这将表明服务合同的主要/默认实现。
答案 1 :(得分:1)
AppName.Services.Events.EventService.cs //(the actual service)
AppName.Services.Events.ParticipantValidator.cs
AppName.Services.Events.ParticipantCoordinator.cs
AppName.Validators.DateValidator.cs
AppName.Text.Extensions.cs
要点:
可以在此处找到Microsoft指南:Framework Design Guidelines