使用Visual Studio2013保存源代码时可以运行StyleCop吗?

ko2ic

run StyleCop使用StyleCop时,我总是做菜单或构建项目。
保存程序后,我想运行StyleCop。

是否有可能?

阿德里亚诺·雷佩蒂(Adriano Repetti)

不幸的是,宏已被删除,但是编写外接程序非常容易。首先,创建一个新的C#加载项项目(完成后,您需要将DLL部署到Visual Studio AddIns文件夹中,然后重新启动VS)。

编辑生成的模板以附加到DocumentSaved事件:

private DocumentEvents _documentEvents;

public void OnConnection(object application,
                         ext_ConnectMode connectMode,
                         object addInInst,
                         ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    _documentEvents = _applicationObject.Events.DocumentEvents;
    _documentEvents.DocumentSaved += DocumentEvents_DocumentSaved;

}

public void OnDisconnection(ext_DisconnectMode disconnectMode,
                            ref Array custom)
{
    _documentEvents.DocumentSaved -= DocumentEvents_DocumentSaved;
}

您的DocumentEvents_DocumentSaved方法只需要调用正确的VS命令(请注意,命令名称随您使用的Visual Studio版本而异)。

private void DocumentEvents_DocumentSaved(Document Document)
{
    document.DTE.ExecuteCommand("Build.RunCodeAnalysisonSelection", "");
}

在这种情况下,您将仅在当前项目上运行代码分析(假设这是您保存的内容,然后它也是您要测试的内容)。此假设对于“全部保存”失败,因此您可能需要使用"Build.RunCodeAnalysisonSolution"当然,还有很多改进空间(例如,当发生多个接近连续的保存时)。

如果您以VS 2013为目标,则不应使用AddIns,因为不推荐使用AddIns,而推荐使用Packages。您有相同的事情要做,但是您可以通过收到该通知IVsRunningDocTableEvents覆盖Initialize()您的Package(将实现IVsRunningDocTableEvents接口)。AdviseRunningDocTableEvents()IVsRunningDocumentTable(通过获取GetService()致电,您已完成。

最后请注意,相同的技术也适用于任何其他事件(成功构建之后,部署之前,关闭解决方案时等等)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Visual Studio2013保存源代码时可以运行StyleCop吗?

来自分类Dev

您可以在源代码管理中存储 Visual Studio 2013 项目模板吗?

来自分类Dev

有什么简单的方法可以使用Visual Studio 2013压缩我的源代码?

来自分类Dev

Visual Studio在运行Web Project时删除源代码

来自分类常见问题

使用Visual Studio 2013时,TFVC(TFS版本控制)和用于源代码控制的Git之间有什么大区别?

来自分类Dev

我可以在Visual Studio 2013上使用.net Core吗

来自分类Dev

在Visual Studio中运行源代码控制

来自分类Dev

使用Visual Studio Express 2013运行Visual Studio 2012 Ultimate时出错

来自分类Dev

从源代码运行Visual Studio代码时,“找不到扩展名”

来自分类Dev

我可以在Visual Studio 2013中使用Visual Source Safe吗?

来自分类Dev

我可以在Visual Studio 2013中使用Visual Source Safe吗?

来自分类Dev

Visual Studio 2013 RC和源代码控制

来自分类Dev

在Visual Studio 2013中更改TFS源代码管理映射

来自分类Dev

如何使Visual Studio 2013源代码管理忽略包目录

来自分类Dev

使用Visual Studio 2013的cURL

来自分类Dev

如何使用我下载的Visual Studio编译C ++源代码

来自分类Dev

您是否可以将Visual Studio 2008 BIDS SSIS包签入/签出到TFS 2013源代码管理?

来自分类Dev

使用Visual Studio 2012编译时,此代码给我错误,但使用代码块可以

来自分类Dev

使用python的Visual Studio代码

来自分类Dev

Visual Studio 2013保存时部署文件

来自分类Dev

您可以使用旧的运行时库进行Visual c ++ 2013构建吗?

来自分类Dev

无法使用Visual Studio 2013调试托管代码(“无法评估表达式”错误-正在使用调试版本)(请注意,VS 2012可以运行)

来自分类Dev

我可以使“转到定义”跳转到Visual Studio 2013中的TypeScript代码吗?

来自分类Dev

可以强化静态代码分析器扫描Visual Studio 2013项目吗?

来自分类Dev

使用Windows版Visual Studio 2013 Express可以找到C函数的堆栈深度吗?

来自分类Dev

Visual Studio 2013可以使用当前程序集版本标记git commit吗

来自分类Dev

适用于Windows的GitHub和Visual Studio 2013-可以一起使用吗?

来自分类Dev

使用Windows版Visual Studio 2013 Express可以找到C函数的堆栈深度吗?

来自分类Dev

Mongosis SSIS数据源可以与Visual Studio 2013一起使用吗?

Related 相关文章

  1. 1

    使用Visual Studio2013保存源代码时可以运行StyleCop吗?

  2. 2

    您可以在源代码管理中存储 Visual Studio 2013 项目模板吗?

  3. 3

    有什么简单的方法可以使用Visual Studio 2013压缩我的源代码?

  4. 4

    Visual Studio在运行Web Project时删除源代码

  5. 5

    使用Visual Studio 2013时,TFVC(TFS版本控制)和用于源代码控制的Git之间有什么大区别?

  6. 6

    我可以在Visual Studio 2013上使用.net Core吗

  7. 7

    在Visual Studio中运行源代码控制

  8. 8

    使用Visual Studio Express 2013运行Visual Studio 2012 Ultimate时出错

  9. 9

    从源代码运行Visual Studio代码时,“找不到扩展名”

  10. 10

    我可以在Visual Studio 2013中使用Visual Source Safe吗?

  11. 11

    我可以在Visual Studio 2013中使用Visual Source Safe吗?

  12. 12

    Visual Studio 2013 RC和源代码控制

  13. 13

    在Visual Studio 2013中更改TFS源代码管理映射

  14. 14

    如何使Visual Studio 2013源代码管理忽略包目录

  15. 15

    使用Visual Studio 2013的cURL

  16. 16

    如何使用我下载的Visual Studio编译C ++源代码

  17. 17

    您是否可以将Visual Studio 2008 BIDS SSIS包签入/签出到TFS 2013源代码管理?

  18. 18

    使用Visual Studio 2012编译时,此代码给我错误,但使用代码块可以

  19. 19

    使用python的Visual Studio代码

  20. 20

    Visual Studio 2013保存时部署文件

  21. 21

    您可以使用旧的运行时库进行Visual c ++ 2013构建吗?

  22. 22

    无法使用Visual Studio 2013调试托管代码(“无法评估表达式”错误-正在使用调试版本)(请注意,VS 2012可以运行)

  23. 23

    我可以使“转到定义”跳转到Visual Studio 2013中的TypeScript代码吗?

  24. 24

    可以强化静态代码分析器扫描Visual Studio 2013项目吗?

  25. 25

    使用Windows版Visual Studio 2013 Express可以找到C函数的堆栈深度吗?

  26. 26

    Visual Studio 2013可以使用当前程序集版本标记git commit吗

  27. 27

    适用于Windows的GitHub和Visual Studio 2013-可以一起使用吗?

  28. 28

    使用Windows版Visual Studio 2013 Express可以找到C函数的堆栈深度吗?

  29. 29

    Mongosis SSIS数据源可以与Visual Studio 2013一起使用吗?

热门标签

归档