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