说我有一个结构化的,像这样的解决方案:如何手动将解决方案文件夹添加到.sln文件?
|__TopLevelFolder
|___ModuleFolder
|____ProjectFile
|____TestProjectFile
我想创造另一个“ModuleFolder”,“顶层”下,并添加其相应的项目和测试项目文件。然而,为了我的目的,我必须手动修改.sln文件来添加它们(我这样做是作为yeoman生成器的一部分,这意味着我不能像VS一样在VS中执行此操作)。
我的问题是,当我修改.sln文件时,我的文件夹显示为不可用的项目,当我尝试重新加载它时,加载失败,并显示“无法找到项目文件或Web”。以下是我在.sln文件正在做:
首先,我添加的文件夹:
Project("{GUID}") = "NewModuleFolder", "NewModuleFolder", "{NewModuleGUID}"
EndProject
然后我添加实际的项目:
Project("{GUID}") = "TopLevel.NewModule.Tests", "src\TopLevel\NewModule\TopLevel.NewModule.Tests.csproj", "{TestProjectGUID}"
EndProject
然后在“preSolution”第一节添加哪个地方NewModuleFolder的TopLevelFolder下方的线还有TestProject的NewModuleFolder下:
GlobalSection(NestedProjects) = preSolution
{NewModuleGUID} = {TopLevelGUID}
{TestProjectGUID} = {NewModuleGUID}
...
EndGlobalSection
这正是所有其他文件夹和项目在我的解决方案中工作的原因(相信我是双倍和三重检查以及尝试切换GUID以确保)。
任何想法如何使这项工作或我做错了什么(或不同的方式,我应该这样做考虑我创建一个yeoman发电机)?
谢谢!
你完全正确。我把它设置为csproj guid而不是文件夹(或者至少我是这么理解的)。非常感谢! – Andrew