当我将鼠标悬停在visual studio中的OracleConnection对象上时,我收到一个奇怪的警告。它似乎并没有阻止我的网站正常工作,但警告让我感到困惑。
似乎该类和Oracle.DataAcces.Client命名空间同时可见且对我的项目不可见。
以下是一些图片:
我不知道造成这种情况的原因;我的项目引用中已经有了Oracle.DataAcces引用。我怀疑正在发生的是一个会导致我的项目名称干扰我的命名空间的错误,但这似乎不是它。
我尝试将我的命名空间名称和项目名称更改为不同的东西,我仍然得到相同的结果。
由于某种原因,项目在导航栏中显示两次:
答案 0 :(得分:0)
您是否检查过调试器的版本是否与Oracle.DataAcces.Client库的版本匹配?也就是说,例如,如果您使用的是x64位版本的Debugger,那么您应该确保dll文件也是x64。我今天无法访问此引用,这解决了它。希望这可以帮助!
答案 1 :(得分:0)
经过一些研究,使用科学方法和扔东西都是旋转刀片,看看这是我认为可能发生的事情,我想我找到了一个解决方案/解决方法"它。
Visual Studio正在尝试向临时DLL /项目添加一些临时DLL /引用,其中包含不属于我的Web应用程序目录的所有命名空间。
这就是让我觉得这种情况发生的原因:
打开对象浏览器 Ctrl + Alt + J 时,projectX项目有多个实例。使用Dot peek我确定其中一个是我项目的编译版本,另一个是没有主命名空间(projectX)的奇怪项目:
清理项目有时会起作用,但到目前为止最好的解决方案是进入解决方案并从我的项目文件夹中删除bin和obj文件夹并重新启动visual studio。
仅使用没有子命名空间的projectX命名空间并不能解决所有问题。对象浏览器中的附加projectX实例包含与普通实例相同的内容,减去主目录中的文件和网页对象。
在解决方案中创建一个类库,并将所有类放入其中。然后将您的类所需的引用移动到新的类库中。最后,向指向类库的Web应用程序添加项目引用。
看起来我设法找到修复但是,但是我必须花更长时间才能确定它。
我发现找到的解决方案效果很好,并且不会再次导致问题发生,因此我推荐它。