CollectionToHtmlExtensions 1.0.2

dotnet add package CollectionToHtmlExtensions --version 1.0.2
                    
NuGet\Install-Package CollectionToHtmlExtensions -Version 1.0.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="CollectionToHtmlExtensions" Version="1.0.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="CollectionToHtmlExtensions" Version="1.0.2" />
                    
Directory.Packages.props
<PackageReference Include="CollectionToHtmlExtensions" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add CollectionToHtmlExtensions --version 1.0.2
                    
#r "nuget: CollectionToHtmlExtensions, 1.0.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package CollectionToHtmlExtensions@1.0.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=CollectionToHtmlExtensions&version=1.0.2
                    
Install as a Cake Addin
#tool nuget:?package=CollectionToHtmlExtensions&version=1.0.2
                    
Install as a Cake Tool

🧩 CollectionToHtmlExtensions

NuGet Downloads .NET License

Extensões em C# para converter coleções de objetos (IEnumerable<T>) em elementos HTML, como tabelas e parágrafos.
Ideal para exibição de relatórios, visualização de dados e geração dinâmica de conteúdo HTML.


🚀 Instalação

No seu projeto .NET:

dotnet add package CollectionToHtmlExtensions

🧠 Funcionalidades principais

✅ Converter listas em tabelas HTML ✅ Gerar parágrafos com rótulos automaticamente ✅ Suporte a objetos fortemente tipados e dinâmicos ✅ Customização de CSS classes e títulos de seção ✅ Codificação automática de HTML (HtmlEncode)


💻 Exemplo de uso

🔹 Geração de tabela HTML

using CollectionToHtmlExtensions;

var clientes = new[]
{
    new { Nome = "Thiago", Idade = 30, Cidade = "São Paulo" },
    new { Nome = "Ana", Idade = 25, Cidade = "Curitiba" }
};

string htmlTable = clientes.ToHtmlTable(
    tableCssClass: "table table-striped",
    headerCssClass: "thead-dark",
    rowCssFunc: (c, i) => i % 2 == 0 ? "even-row" : "odd-row"
);

Console.WriteLine(htmlTable);

🔸 Saída:

<table class="table table-striped">
  <thead class="thead-dark">
    <tr>
      <th>Nome</th>
      <th>Idade</th>
      <th>Cidade</th>
    </tr>
  </thead>
  <tbody>
    <tr class="even-row">
      <td>Thiago</td>
      <td>30</td>
      <td>São Paulo</td>
    </tr>
    <tr class="odd-row">
      <td>Ana</td>
      <td>25</td>
      <td>Curitiba</td>
    </tr>
  </tbody>
</table>

🔹 Geração de parágrafos HTML

using CollectionToHtmlExtensions;

var dados = new[]
{
    new { Empresa = "AVVA", CNPJ = "12.345.678/0001-99", Responsável = "Thiago Darlei" }
};

string html = dados.ToHtmlParagraphs(
    paragraphCssClass: "info-section",
    labelCssClass: "label-bold",
    sectionTitle: "Dados da Empresa"
);

Console.WriteLine(html);

🔸 Saída:

<h4>Dados da Empresa</h4>
<div class="info-section">
  <p><span class="label-bold">Empresa:</span> AVVA</p>
  <p><span class="label-bold">CNPJ:</span> 12.345.678/0001-99</p>
  <p><span class="label-bold">Responsável:</span> Thiago Darlei</p>
</div>

⚙️ Parâmetros disponíveis

ToHtmlTable<T>()

Parâmetro Tipo Descrição
columns IEnumerable<string>? Colunas específicas a exibir.
tableCssClass string? Classe CSS da <table>.
headerCssClass string? Classe CSS do <thead>.
rowCssFunc Func<T, int, string>? Função para definir a classe CSS por linha.

ToHtmlParagraphs<T>()

Parâmetro Tipo Descrição
columns IEnumerable<string>? Colunas específicas a exibir.
paragraphCssClass string? Classe CSS do container <div>.
labelCssClass string? Classe CSS aplicada ao rótulo.
sectionTitle string? Título da seção (gera um <h4>).

🧩 Compatibilidade

.NET versão Suporte
.NET 8.0
.NET 7.0
.NET 6.0

🪪 Licença

Licenciado sob MIT License. © 2025 Thiago Darlei — AVVA Domain Utils.


Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net8.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.2 192 11/5/2025
1.0.1 180 11/5/2025
1.0.0 197 11/5/2025