首先,我将描述一个如何在Visual Studio中使用C#实现这一点的示例,因为VS通常会通知您是否有循环引用并阻止它.
首先,仅依靠Visual Studio和.Net为您提供的代码创建Utilities类.然后,创建一个依赖于Utilities 的电子邮件类.不是将两个项目都添加到单个解决方案中,而是创建新的解决方案并添加对Utilities.dll的引用.然后,一段时间后,有人决定他们希望Utilities类发送电子邮件并添加对Email.dll的引用.Visual Studio非常乐意让您这样做,但是现在源代码不会在没有二进制文件的情况下按原样编译.
在我的工作地点,在进行开发时复制并粘贴二进制文件是标准的过程,然后只构建您正在处理的项目.这导致代码库中至少有一个循环引用已经被忽视超过3年.
这对我来说似乎是一个非常糟糕的做法,因为没有先从DLL开始构建任何项目.这个论点与我合作的"实际"人群有点平淡,因为我们似乎不太可能同时丢失所有二进制文件的副本.二进制文件在任何时候都不存储在版本控制中,这只会让我更担心.
这似乎是应该避免的情况,但不是造成任何明显威胁的情况.项目之间的循环引用真的很重要,还是我把它吹得不成比例?
我在一个解决方案中有一个类库项目和MVC项目.
我的类库有名称空间MyStuff.Classes
我的MVC项目有名称空间MyStuff.Web
我似乎无法直接或使用using指令从mvc项目访问我的类库,反之亦然?
什么是在这种情况下使用命名空间的最佳方法?一般情况下?任何提示提示欢迎.
谢谢