我创建了一个新的解决方案并通过Solution2.AddFromTemplate添加一些项目。现在,在成功构建解决方案之前,我需要将其中一个项目的项目引用添加到另一个项目。我正在尝试导航 VS 自动化对象模型,但找不到如何执行此操作。
我意识到我可以将 csproj 作为 XML 打开并在磁盘上进行更改(如此处建议),但随后我需要处理 Visual Studio 检测项目文件更改并提示重新加载它。
任何人都知道如何做到这一点或指出我正确的方向?
我创建了一个新的解决方案并通过Solution2.AddFromTemplate添加一些项目。现在,在成功构建解决方案之前,我需要将其中一个项目的项目引用添加到另一个项目。我正在尝试导航 VS 自动化对象模型,但找不到如何执行此操作。
我意识到我可以将 csproj 作为 XML 打开并在磁盘上进行更改(如此处建议),但随后我需要处理 Visual Studio 检测项目文件更改并提示重新加载它。
任何人都知道如何做到这一点或指出我正确的方向?
找到答案,张贴以备日后参考。
诀窍是将EnvDTE.Project的 Object 属性转换为VSProject,然后在其 References 属性上调用 AddProject。
var targetProject = (VSProject) _project.Object;
targetProject.References.AddProject(sourceProject);