检查未保存的更改并要求用户保存

时间:2019-04-14 05:59:41

标签: visual-studio-extensions

我正在写一个扩展程序,它将文件添加到解决方案的项目中。

首先检查未保存的更改是有意义的,如果有更改,请要求用户保存。

我该如何实现?

是否有开放源代码的VS扩展可以做到这一点,所以我可以看看它是如何完成的?

2 个答案:

答案 0 :(得分:2)

要找出是否有未保存的更改,可以使用DTE.Documents枚举打开的文档,并检查每个文档的Document.Saved属性。

答案 1 :(得分:1)

您可以尝试通过具有相应功能的Microsoft.Build.Evaluation处理项目。

  

扩展名,可将文件添加到解决方案中的项目。

在将新文件包含到项目中之后,必须重新评估它们。请注意Project.IsDirty属性:

  

一个项目被修改,当基础项目被重新评估时,   项目源代码,包括对导入文件的更改。一个项目是   如果项目工具集发生更改,则必须重新评估已修改的内容。


Project.IsDirty | Project.ReevaluateIfNecessary | Project.Save