我正在写一个扩展程序,它将文件添加到解决方案的项目中。
首先检查未保存的更改是有意义的,如果有更改,请要求用户保存。
我该如何实现?
是否有开放源代码的VS扩展可以做到这一点,所以我可以看看它是如何完成的?
答案 0 :(得分:2)
要找出是否有未保存的更改,可以使用DTE.Documents枚举打开的文档,并检查每个文档的Document.Saved属性。
答案 1 :(得分:1)
您可以尝试通过具有相应功能的Microsoft.Build.Evaluation处理项目。
扩展名,可将文件添加到解决方案中的项目。
在将新文件包含到项目中之后,必须重新评估它们。请注意Project.IsDirty属性:
一个项目被修改,当基础项目被重新评估时, 项目源代码,包括对导入文件的更改。一个项目是 如果项目工具集发生更改,则必须重新评估已修改的内容。
Project.IsDirty | Project.ReevaluateIfNecessary | Project.Save