(而不是一個集引用)在Visual Studio中,當您在您的解決方案中添加一個引用到現有項目的.csproj文件,它結束了,像這樣:編程方式添加在C#項目引用通過EnvDTE
<ProjectReference Include="..\TestProject2\TestProject2.csproj">
<Project>{15EC8369-B0C5-4F71-A366-19042F450A2D}</Project>
<Name>TestProject2</Name>
</ProjectReference>
如果通過EnvDTE到組裝DLL添加的引用:
var p = _project as VsProject;
p.References.Add(<path to assembly DLL>);
它結束這樣的:
<Reference Include="TestProject2.csproj">
<HintPath>..\TestProject2\bin\Debug\TestProject2.csproj.dll</HintPath>
</Reference>
這不是太好,因爲如果我切換到Release版本,它仍然會引用調試程序集。另一個問題是我必須構建引用的程序集,然後才能將其添加爲參考。使用Visual Studio UI,我可以添加對未構建項目的引用。
是否可以通過EnvDTE API添加項目引用?
我知道我可以將.csproj文件作爲一個XML文檔來操作,並且可以做任何我想做的事情,但是自從我開始使用EnvDTE的路徑之後,我更願意堅持使用它。
我相信你也可以通過提供項目名稱來添加一個帶有Add.References項目的引用。請參閱http://blogs.msdn.com/b/murat/archive/2008/07/30/envdte-adding-a-refernce-to-a-project.aspx – 2012-07-17 20:34:03
不,它不起作用。 – 2012-07-18 04:00:01
獲取此錯誤。 http://msdn.microsoft.com/en-us/library/ms228768(v=vs.110).aspx試過解決方案仍然無法做到這一點。 – iamCR 2014-03-10 10:25:42