我有一个InspectionResults.xml
,当我从inspectcode.exe
运行JetbrainsCommandLine Tool Analysis
时生成。是否有xslt
提供的Jetbrains
文件将这个xml转换为html。我能够使用他们提供的DuplicateReport.xml
将html
转换为xslt
。 Jetbrains是否为此转换提供一个。如果没有,请帮帮我。
我的xml文件如下:
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated by JetBrains Inspect Code 9.1 -->
<Report ToolsVersion="102.0">
<Information>
<Solution>Server\Server.sln</Solution>
<InspectionScope>
<Element>Solution</Element>
</InspectionScope>
</Information>
<IssueTypes>
<IssueType Id="ArrangeStaticMemberQualifier" Category="Code Style" Description="Add/remove qualifier for static members" Severity="WARNING" />
<IssueType Id="ArrangeThisQualifier" Category="Code Style" Description="Add/remove 'this.' qualifier" Severity="WARNING" />
<IssueType Id="CSharpErrors" Category="C# Compiler Errors" Description="" Severity="ERROR" />
</IssueTypes>
<Issues>
<Project Name="Common">
<Issue TypeId="RedundantUsingDirective" File="Common\AdapterAuthorizationException.cs" Offset="15-48" Line="2" Message="Using directive is not required by the code and can be safely removed" />
<Issue TypeId="RedundantUsingDirective" File="Common\AdapterAuthorizationException.cs" Offset="50-68" Line="3" Message="Using directive is not required by the code and can be safely removed" />
<Issue TypeId="CSharpErrors" File="Common\AdapterAuthorizationException.cs" Offset="63-67" Line="3" Message="Cannot resolve symbol 'Linq'" />
</Project>
</Issues>
</Report>
最佳答案
我发现了 Resharper 命令行工具的概述功能中提到的这个 inspectcode.xslt ,并且工作正常。
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
<xsl:key name="ISSUETYPES" match="/Report/Issues/Project/Issue" use="@TypeId"/>
<xsl:output method="html" indent="yes"/>
<xsl:template match="/" name="TopLevelReport">
<html>
<head>
<title>Resharper InspectCode Report</title>
<style>
body { font-family: Arial; }
th, td { text-align: left; }
.severity { font-weight: bold; }
</style>
</head>
<body>
<h1>Resharper InspectCode Report</h1>
<xsl:for-each select="/Report/IssueTypes/IssueType">
<h2>
<span class="severity"><xsl:value-of select="@Severity"/></span>: <xsl:value-of select="@Description"/>
</h2>
<table style="width:100%">
<tr>
<th>File</th>
<th>Line Number</th>
<th>Message</th>
</tr>
<xsl:for-each select="key('ISSUETYPES',@Id)">
<tr>
<td>
<xsl:value-of select="@File"/>
</td>
<td>
<xsl:value-of select="@Line"/>
</td>
<td>
<xsl:value-of select="@Message"/>
</td>
</tr>
</xsl:for-each>
</table>
<br />
<hr />
<br />
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
本内容摘自:
https://gist.github.com/maartenba/b7b1866d11a54cf3bc9f04316afa1a9e
功能概述如下:
https://www.jetbrains.com/help/resharper/ReSharper_Command_Line_Tools.html
在那个视频中提到了这个
xslt
如果您需要一个工具来应用此 XSLT,请参阅此问题和答案
Are there any XSLT processing command line tools?