我有一个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>
Run Code Online (Sandbox Code Playgroud)
我发现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>
Run Code Online (Sandbox Code Playgroud)
此内容摘自:
https://gist.github.com/maartenba/b7b1866d11a54cf3bc9f04316afa1a9e
功能概述如下:
https://www.jetbrains.com/help/resharper/ReSharper_Command_Line_Tools.html
在该视频中xslt提到了这一点
如果您需要工具来应用此 XSLT,请参阅此问题和答案