繁体   English   中英

Visual Studio 2017 找不到解决方案中存在的文件夹

[英]Visual Studio 2017 can't find folder that exists in the solution

我有 Visual Studio 2017 项目,我需要在其中打开一个名为 Devdog.General 的文件夹,该文件夹也包含在我的解决方案中。 但是,当我尝试导入它时,它不会将其识别为现有文件夹,并给我一个缺少目录/命名空间的错误。 有关更多信息,请参阅屏幕截图。 在此处输入图片说明

试试这个按钮:

显示所有文件

前几天我遇到了类似的问题,它与 Visual Studio 不知道是项目一部分的文件有关,因为它们是在外部创建的(包括文件夹)。 Visual Studio 可以看到它们,但它对我隐藏了它们

单击该按钮后,您将能够右键单击该文件夹并选择“包含在项目中”,其中将包含用于编译和导航的文件。

首先,尝试选择此“General”文件夹中的任何“*.cs”文件,并检查“Properties”视图是否将Build Action配置为Compile Visual Studio 只会编译您的文件,前提是它具有正确的构建操作。

其次,打开“*.cs”文件并验证其中定义的命名空间是否正确。 对于 C#,文件夹结构并不重要:真正重要的是您在其中定义类的命名空间。您可以在与它们包含在项目中的文件夹完全不同的命名空间中定义类。 这完全是任意的,取决于您的组织需求。

下面是一张说明您需要检查的内容(以及检查地点)的图像。

在此处输入图片说明

检查事项
1.) 检查 .CS 文件中的命名空间 - 它们共同创建您正在引用的可用命名空间 - 而不是文件夹名称。 如果您创建几个文件,然后将它们移动到一个文件夹,并在该文件夹中创建新文件,它们将具有不同的命名空间。 较新的文件将具有后跟 .FolderName 的默认命名空间值。 所以一定要检查一下。

2.) CSPROJ 可能会被控制并丢失对 UI 中显示的文件夹的引用。 从项目中删除文件夹(通过 VS2017 UI,右键单击并选择该选项)。 不要删除。 然后在用户界面中重新创建文件夹(它不应该让你手动导航到文件夹目录并临时重命名文件夹.OLD)。 文件夹重命名后,请尝试重新创建文件夹。 成功后,将所有 CS 文件从 folder.OLD 移动到新文件夹中。 在文件和文件夹恢复到原来的位置后,然后在 Visual Studio 中,在 .cs 文件上“添加现有项目”。 这将一一重新创建 CSPROJ 引用。

3.) 卸载 CSPROJ,右键单击并编辑 CSPROJ 以手动检查 ItemGroups 中的所有 .CS 引用。 确保它的myfolder\\myotherfolder\\mycsfile.cs

4.) 删除对包含命名空间的其他项目的引用,并重新添加它们。 一一验证命名空间开始重新出现在已识别的 Intellisense 中。

5.) 如果您尝试上述步骤,请关闭解决方案,关闭 Visual Studio,导航到 SLN 文件夹容器,然后删除隐藏文件夹.vs ,然后重新打开所有内容。

有时发生的情况是文件夹重命名或文件传输不会传播到 .CSPROJ 文件夹,然后命名空间不会被智能感知缓存,并且会出现大量错误。

请检查您的文件夹名称和命名空间名称。 可能文件夹名称和命名空间不匹配

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM