GenerateNow(string folder, string where)
var nameFile = Path.Combine(where, $"{NameSolution}_summary.html");
await system.File.WriteAllTextAsync(nameFile, html);
- WriteJs(where);
+ WriteJs(where);
var ex = new ExtractImages(nameFile);
await ex.GetImagesAsync();
-
-
+ MDSummaryData md = new ();
+ md.nameSolution = GlobalsForGenerating.NameSolution;
+ md.ExistsMajorDiffers= (modelMore1Version.KeysPackageMultipleMajorDiffers().Length > 0);
+ var mdSummary = new MDSummary(md);
+ var mdHtml = mdSummary.Render();
+ var nameFileMD = Path.Combine(where, $"{NameSolution}_summary.md");
+ await system.File.WriteAllTextAsync(nameFileMD, mdHtml);
return nameFile;
}
finally
diff --git a/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/HtmlSummary.cshtml b/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/HtmlSummary.cshtml
index ba07cc2..feb7143 100644
--- a/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/HtmlSummary.cshtml
+++ b/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/HtmlSummary.cshtml
@@ -409,7 +409,7 @@
With most Cyclomatic Complexity
- :@CycAssIndex.First1()?Count
+ :@CycAssIndex.First1()?.Count
|
@CycAssIndex.First1()?.Name |
@@ -476,7 +476,7 @@
@(++tableRow) |
- With most lines:@execClassLines.First1()??.Count
+ With most lines:@execClassLines.First1()?.Count
|
@execClassLines.First1()?.Name |
@@ -1073,7 +1073,7 @@ columns: [
@keysPackageMultiple.Length Packages with major version different
@if (keysPackageMultiple.Length > 0)
{
-
+
Nr |
diff --git a/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/MDSummaryData.cs b/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/MDSummaryData.cs
new file mode 100644
index 0000000..90393c2
--- /dev/null
+++ b/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/MDSummaryData.cs
@@ -0,0 +1,7 @@
+
+namespace NetPackageAnalyzerExportHTML;
+internal class MDSummaryData
+{
+ public string nameSolution { get; set; }=string.Empty;
+ public bool ExistsMajorDiffers { get; internal set; }
+}
diff --git a/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/NetPackageAnalyzerExportHTML.csproj b/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/NetPackageAnalyzerExportHTML.csproj
index 60cf365..7760a4b 100644
--- a/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/NetPackageAnalyzerExportHTML.csproj
+++ b/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/NetPackageAnalyzerExportHTML.csproj
@@ -6,9 +6,9 @@
enable
CS0436
- false
+ true
-
+
diff --git a/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/Templates/MDSummary.cshtml b/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/Templates/MDSummary.cshtml
new file mode 100644
index 0000000..16c9012
--- /dev/null
+++ b/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/Templates/MDSummary.cshtml
@@ -0,0 +1,54 @@
+@inherits RazorBlade.PlainTextTemplate
+@{
+ var name = Model.nameSolution;
+ var nameFolder = name + "_summary";
+}
+
+# Summary for @name
+
+## Project relations
+
+/projects-without-tests.png)
+
+
+
+## Project Data
+
+### Public Classes per project
+
+/Public-class-per-project.png)
+
+### Number lines per project
+
+/Number-exec-lines-per-project.png)
+
+
+## Class data
+
+### Public methods per class
+
+/Public-methods-per-class.png)
+
+### Number methods per class
+
+/Number-methods-per-class.png)
+
+### Number lines per class
+/Number-exec-lines-per-class.png)
+
+## Method data
+
+### Cyclomatic complexity per method
+
+/Cyclomatic-Complexity-for-Method.png)
+
+### Maintainability index per method
+/Maintainability-for-Method.png)
+
+### Number lines per method
+/Number-exec-lines-per-method.png)
+
+
+
+## Commits
+/commits-year-project.png)
diff --git a/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/Templates/NamePerCountDisplay.cshtml b/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/Templates/NamePerCountDisplay.cshtml
index 242e5ab..1af3d77 100644
--- a/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/Templates/NamePerCountDisplay.cshtml
+++ b/src/NetPackageAnalyzer/NetPackageAnalyzerExportHTML/Templates/NamePerCountDisplay.cshtml
@@ -34,11 +34,65 @@
+ "]";
var maxCount = nameCount.Max(it => it.Count);
var yAxis = "[" + string.Join(',', nameCount.Select(it => it.Count).ToArray()) + "]";
+
+ var nameCountGraphic = nameCount;
+ if (nameCount.Length > 10)
+ {
+ nameCountGraphic = nameCount.Take(10).ToArray();
+ }
+ string assNamesMaintIndex = string.Join(",", nameCountGraphic.Select(it => "'" + it.Name + "'"));
+ string valuesMaintIndex = string.Join(",\r\n",
+ nameCountGraphic.Select(it => "{value:" + it.Count +"}")
+ );
+
StatisticsDisplay statisticsDisplay = new(arr.Statistics());
}
@statisticsDisplay.Render()
+
+
+
+
+
+@*
---
config:
@@ -57,7 +111,8 @@ y-axis "" 0--> @maxCount
bar @yAxis
-
+ *@
+