Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从VisualStudio扩展访问项目XML_C#_Visual Studio_Visual Studio 2013_Msbuild_Visual Studio Extensions - Fatal编程技术网

C# 如何从VisualStudio扩展访问项目XML

C# 如何从VisualStudio扩展访问项目XML,c#,visual-studio,visual-studio-2013,msbuild,visual-studio-extensions,C#,Visual Studio,Visual Studio 2013,Msbuild,Visual Studio Extensions,我正在处理一个Visual Studio扩展,该扩展需要直接修改项目的msbuild文件(例如.*.csproj)。不幸的是,似乎没有公开任何支持此功能的对象 如果所有其他操作都失败,我总是可以在保存事件后基于文件创建一个对象,在那里进行编辑,然后重新保存。然而,这将迫使用户重新加载他们的项目,我更愿意避免这样做 中描述了更好的部分解决方案。VisualStudio将其一些已计算对象保留在中,并平滑地检测我通过扩展所做的任何更改。不幸的是,这似乎并不适用于所有项目类型;它对C++非常有用,但是当

我正在处理一个Visual Studio扩展,该扩展需要直接修改项目的msbuild文件(例如.*.csproj)。不幸的是,似乎没有公开任何支持此功能的对象

如果所有其他操作都失败,我总是可以在保存事件后基于文件创建一个对象,在那里进行编辑,然后重新保存。然而,这将迫使用户重新加载他们的项目,我更愿意避免这样做

中描述了更好的部分解决方案。VisualStudio将其一些已计算对象保留在中,并平滑地检测我通过扩展所做的任何更改。不幸的是,这似乎并不适用于所有项目类型;它对C++非常有用,但是当我加载C++项目时,全局集合会空空如也。 有人知道一种好的、受支持的方式来访问评估过的项目对象吗?如果做不到这一点,有没有一种解决方案不涉及强制重新加载项目

该扩展需要与Visual Studio 2013+兼容,但不需要支持旧版本