in src/lib/Microsoft.Fx.Portability.Reports.Excel/ExcelOpenXmlOutputWriter.cs [355:407]
private void GenerateBreakingChangesPage(Worksheet worksheet, IEnumerable<BreakingChangeDependency> breakingChanges)
{
var row = 1;
var header = new[]
{
"Break ID",
"API",
"Assembly",
"Title",
"Scope",
"Quirked",
"Requires Retargeting",
"Build Time",
"VersionBroken",
"Version Fixed",
"Details",
"Suggestion",
"Analyzer Status",
"Link",
"Investigated"
};
worksheet.AddRow(header);
foreach (var breakingChange in breakingChanges)
{
var rowContent = new object[]
{
breakingChange.Break.Id,
breakingChange.Member.MemberDocId,
breakingChange.DependantAssembly.ToString(),
breakingChange.Break.Title,
breakingChange.Break.ImpactScope.ToString(),
breakingChange.Break.IsQuirked.ToString((IFormatProvider)CultureInfo.CurrentUICulture),
breakingChange.Break.IsRetargeting.ToString((IFormatProvider)CultureInfo.CurrentUICulture),
breakingChange.Break.IsBuildTime.ToString((IFormatProvider)CultureInfo.CurrentUICulture),
breakingChange.Break.VersionBroken.ToString(),
breakingChange.Break.VersionFixed?.ToString() ?? string.Empty,
breakingChange.Break.Details,
breakingChange.Break.Suggestion,
breakingChange.Break.SourceAnalyzerStatus.ToString(),
string.IsNullOrWhiteSpace(breakingChange.Break.Link) ? "No link" : CreateHyperlink("Link", breakingChange.Break.Link),
string.Empty
};
worksheet.AddRow(rowContent);
row++;
}
worksheet.AddTable(1, row, 1, header);
worksheet.AddColumnWidth(10, 10, 30, 30, 20, 10, 10, 10, 10, 30, 30, 10, 10, 10);
}