Visual Studio 2012不会加载使用通配符包含的项目中的文件

时间:2013-05-17 18:15:30

标签: c# visual-studio-2012 csproj

我使用通配符(手动编辑.csproj文件)在我的.csproj文件中包含了一些文件,如下所示:

<ItemGroup>
    <Compile Include="Class1.cs" />
    <Compile Include="Properties\AssemblyInfo.cs" />
    <Compile Include="..\..\**\Foo???Class.cs" />
</ItemGroup>

它完美无缺。但是当我在另一个目录中创建了我的整个代码树的副本时,突然它停止了工作。当我打开原始目录时,它可以工作,但是当我在另一个目录中打开副本时,VS说:

  

无法将文件'.... ** \ Foo ??? Class.cs'添加到项目中。   指定的路径包含无效字符,是绝对路径,   或者是项目目录之外的路径。

为什么会这样?我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

看起来Visual Studio对文件夹名称的长度有限制。

新目录(我在其中放置了复制的代码)名称长度为42个字符。当我将其名称减少到20个字符时,通配符神奇地工作,就像在原始代码树中一样。