【C#错误】未能添加对“LoginBLL”的引用,将此项目作为引用添加将导致循环依赖项
2017-04-22 11:08
836 查看
前言:
在实现三层架构的实例练习时,涉及到命名空间的引用,出现了如下问题:未能添加对“LoginBLL”的引用,将此项目作为引用添加将导致循环依赖项。如下图:
问题分析:
错误提示告诉我说它是因为“循环依赖”导致的错误,也就是说:A引用B时不成功,有可能是B此时已经引用了A,导致两个项目循环引用进入一个反复引用的状态。比如A引用B,B引用C,C引用A,此时C更新了,B跟着更新,那么A也跟着更新,C也得跟着更新?而后进入无限的死循环。举这个例子,想说明的是,当A引用B时,B就不能直接或者间接的引用A了,否则就会出现上面的错误。解决方案:
我想要做的是在LoginUI中引用LoginBLL,但此时LoginBLL中已经引用了LoginUI,所以只需要将LoginBLL中的LoginUI引用删除掉就OK了。小思考:
一开始出现这个问题,本能性的点了右上角的红叉,我根本没有耐心看为什么会报这样的错误(尽管这是个很低级的错误)。因为我一心只想着怎么能够把这段程序搞出来,跑起来。但没办法,这个错误不解决后面的程序都没有办法实现。只好回过头来解决它了,其实它很简单,稍稍的动脑想想,你看这不是很简单么。
我们总说要学会站在巨人的肩膀上,但站在巨人肩膀上的前提是:首先你能够爬上巨人的肩膀。每当遇到问题时可以先自己思考思考,猜测一下可能导致它报错的原因,然后去验证我们的猜测,猜对了就好像中了彩票一样的喜悦嘴角挂起。猜不中,大不了再借助巨人的肩膀,最后的结果是这个问题总是会解决。我认为这不失是一个行之有效的好方法。
相关文章推荐
- Asp.net中将此项目作为引用添加将导致循环依赖项
- asp.net 将此项目作为引用添加将导致循环依赖项
- 错误“未能添加对bll的引用,网站上已存在对项目bll的引用”的解决办法
- VS2010 clickonce发布错误:因为某项目未能生成,所以无法发布 非签名问题导致产生的错误
- 在C#项目中如何添加“Web引用”?
- VS项目依赖多种库导致LNK2005错误原因及解决方案
- C#添加C项目以及其dll引用不成功
- 未能解析引用的程序集“”,因为它对不在当前目标框架“”具有依赖关系。请删除对不在目标框架中的程序集的引用,或考虑重新确定项目的目标。
- Android Studio 添加依赖项目后导致运行项目卡死的问题解决
- Eclipse 解决项目间循环依赖的错误
- C#编译时提示未能解析引用的程序(被引用项目编译成功,但引用项目编译时却不能正常引用)
- C#项目添加项目引用和直接添加DLL区别
- Eclipse 中如何解决项目之间循环依赖的错误
- 解决Maven项目下添加HttpServletRequest 或 HttpServletResponse需引用的依赖包报错
- C# *未能找到类型“ * ”,请确保已引用包含此类型的程序集。如果此类型为开发项目的一部分,请确保已使用针对当前平台或任意 CPU 的设置成功生成该项目
- 【IDE-Visual Studio】C#错误 CS0246: 未能找到类型或命名空间名称“xxx”(是否缺少 using 指令或程序集引用?)(编译bug)
- 解决c# winform下添加项目引用无效情况
- 未能解析引用的程序集,因为它对不在当前目标框架具有依赖关系。请删除对不在目标框架中的程序集的引用,或考虑重新确定项目的目标
- 在C#项目中不显示Web引用的情况下如何添加“Web引用”?
- C# DataTable 对象转换成Json时 出现 序列化类型为“System.Reflection.Module”的对象时检测到循环引用 的错误!