“垂直分区”是指以模块命名的命名空间,而不是“层”
所以,
代替,
我遇到的唯一问题是,有时这些程序集可能具有与类型名称相同的命名空间的一部分。
假设我创建了一个与帐户相关的模块,并将其命名为 MyApp.Account.dll,基本命名空间为 MyApp.Account。不可避免地,我需要创建一个名为 Account 的类。然后我必须使用命名空间或类型别名。
除了对名称非常有创意外,还有其他人经历过这种方式切割组件并处理名称冲突问题吗?
最佳答案
过去,我处理过这两种方式:
1)复数命名空间或在适当的地方使它们成为动名词(添加 -ing 后缀)。例如,MyApp.Orders
可以安全地包含 Order
类(class)。 (同样,坚持使用“MyApp.Accounting”而不是“MyApp.Account”)。
2) 通过附加 Domain
到命名空间(有点不满意,但有效)。
关于.net - 如何避免 "vertically partitioned"程序集中的命名空间和类名冲突?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3168883/