ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

c# – 我的visual studio插件如何在构建之前检测编译器错误的方式与“删除和排序使用”相同?

2019-07-10 10:05:07  阅读:232  来源: 互联网

标签:c visual-studio-2008 compiler-errors add-in error-detection


我正在制作一个重构工具,它可以自动化一些与StyleCop相关的更简单的代码样式.我希望我的加载项能够做的事情之一(作为开发人员可以打开/关闭的可选功能)自动调用“组织使用 – >删除和排序”功能.这是一个简单的宏调用.

但是,我的问题是,当我经历并在解决方案中的每个.cs非设计器文件上递归调用宏时,此特定宏在执行之前检查错误.如果出现语法错误并且我的加载项开始调用该功能,则会为每个文件抛出一个对话框.

我想做的是使用函数用于动态检查错误的相同方法,然后如果出现导致对话框弹出的错误,只需弹出一次性通知并跳过调用在每个文件上.

我知道我的加载项可以检查错误列表,但是我发现很多次在“删除和排序”中触发问题的错误并不总是出现在列表中.我已将列表清空,然后我尝试“删除并排序”,它告诉我存在构建问题.然后我构建解决方案,确定它失败并填充错误.我看到的唯一解决方案是使用与“删除和排序”相同的功能来预先检查.

有没有人知道如何在构建之前检测编译器错误,方法与“删除和排序使用”相同?

解决方法:

我不确定你在谈论什么样的错误,我会假设它们是IntelliSense解析器生成的错误.是的,该解析器不是很可靠.它并不是一个完整的C#解析器,它被优化为完成一个非常不同的工作:提供上下文相关的帮助,即使代码不完整且无法编译.除了等待下一个VS版本之外,没有任何其他方法可以让它更可靠.

但令我感到震惊的是,你可能正试图解决错误的问题.关键问题是您的加载项似乎正在删除使用不应删除的指令.真正的解决方法是改进您的代码分析引擎,以便可靠地检测真正的命名空间依赖关系.试图猜测哪些是重要的,希望IntelliSense会抱怨只会让您的客户感到沮丧.

标签:c,visual-studio-2008,compiler-errors,add-in,error-detection
来源: https://codeday.me/bug/20190710/1423094.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有