2013-05-10 64 views
5

我创建了一个新解决方案,并通过Solution2.AddFromTemplate向其添加了一些项目。现在,在我可以成功构建解决方案之前,我需要将一个项目的项目引用添加到另一个项目中。我试图导航VS自动化对象模型,但无法找到如何做到这一点。如何通过Visual Studio自动化在我的解决方案中添加对其他项目的引用

我意识到我可以打开csproj作为XML并将其更改为磁盘(如建议的here),但是之后我需要处理Visual Studio检测项目文件更改并提示重新加载它。

任何人都知道如何做到这一点,或指向正确的方向吗?

+1

右键单击项目 - >添加引用 - >解决方案 - >选择另一个项目添加。这不够吗? – filipko 2013-05-10 21:57:13

+0

不,我正在通过Visual Studio自动化API执行此操作。没有单击UI元素,因为甚至没有显示Visual Studio UI。另请参阅此链接:http://msdn.microsoft.com/en-us/library/envdte%28v=vs.80%29.aspx – MvdD 2013-05-11 18:24:42

回答

4

找到答案,发布供将来参考。

诀窍是将EnvDTE.Project的Object属性转换为VSProject,然后在其References属性上调用AddProject。

var targetProject = (VSProject) _project.Object; 
targetProject.References.AddProject(sourceProject); 
相关问题