Web Analytics

HtmlTableHelper

⭐ 42 stars Indonesian by mini-software

NuGet


version version version version version version version version version version version version version version version version version


Fitur

Instalasi

Anda dapat menginstal paket dari NuGet menggunakan Visual Studio Package Manager atau NuGet UI:

PM> install-package HtmlTableHelper

atau perintah dotnet di command line:

dotnet add package HtmlTableHelper

Demo Fiddle:

Mulai

##### Contoh List/Array/Set/Enumerable non Key/Value Type ``C# using HtmlTableHelper; .. var sourceData = new[] { new { Name = "ITWeiHan", Age = "25",Gender = "M" } }; var tablehtml = sourceData.ToHtmlTable(); /* Hasil:

NameAgeGender
ITWeiHan25M
*/

##### Contoh Dapper
C# using (var cn = "Your Connection") { var sourceData = cn.Query(@"select 'ITWeiHan' Name,25 Age,'M' Gender"); var tablehtml = sourceData.ToHtmlTable(); }

##### Contoh Dictionary
C# var sourceData = new[] {new Dictionary (){{"Name" , "ITWeiHan" },{"Age",25},{"Gender","M"}}}; var tablehtml = sourceData.ToHtmlTable();

Atribut Kustom pada Table/TR/TD/TH (Tipe Dinamis)

C# var data = /List/Array/Set/Enumerable../; var html = data.ToHtmlTable( tableAttributes: new { @class = "SomeClass"} //ini adalah tipe dinamis, mendukung semua atribut ,trAttributes: new { ID = "SomeID" },tdAttributes: new { width = "120 px" },thAttributes: new { @class = "dark-theme" } ); /* Hasil:
..
..
*/

##### Anotasi Atribut

###### 1. Display :

C# public class ModelClassWithDisplayAttr { [TableColumn(DisplayName = "Kolom1")] //Properti MyProperty1 akan merender innertext thead-td: "Kolom1" public string MyProperty1 { get; set; } [TableColumn(DisplayName = "Kolom2")] //Properti MyProperty2 akan merender innertext thead-td: "Kolom2" public string MyProperty2 { get; set; } }

###### 2. Skip : 
C# public class ModelClassWithSkipAttr { [TableColumn( Skip = true)] public string MyProperty1 { get; set; } //MyProperty1 tidak akan merender html public string MyProperty2 { get; set; } }

##### HTMLTableBuilder

###### HtmlCaption

C# var soucreData = new []{ new {MyProperty1="test",MyProperty2=123} }; var html = soucreData.CreateBuilder() .SetCaption("Ini adalah Caption", new { id = "CaptionId" }) .ToHtmlTable(); //Hasil :
Ini adalah Caption
MyProperty1MyProperty2
test123

##### HTMLTableSetting

Pengaturan Encoding InnerHtml yang dapat dikonfigurasi (Disarankan untuk tidak dilakukan tanpa alasan khusus, karena serangan XSS)

C# var sourceData = new[] { new { Name = "ITWeiHan" } };

//Encoding Default var encodinghtml = sourceData.ToHtmlTable(); //Hasil:

..<b>ITWeiHan</b>..

var htmltablesetting = new HTMLTableSetting() { IsHtmlEncodeMode = false }; var notEncodinghtml = sourceData.ToHtmlTable(HTMLTableSetting: htmltablesetting); //Hasil:

..ITWeiHan..

Extension

ASP.NET Core MVC: Buat sebuah IHtmlHelperExtension.cs
C# using System.Collections.Generic; using HtmlTableHelper; using Microsoft.AspNetCore.Mvc.Rendering; using Microsoft.AspNetCore.Html;

public static class IHtmlHelperExtension { public static HtmlString ToHtmlTable(this IHtmlHelper htmlHelper, IEnumerable enums , object tableAttributes = null, object trAttributes = null, object tdAttributes = null , HtmlTableSetting HTMLTableSetting = null) { var html = enums.ToHtmlTable(tableAttributes, trAttributes, tdAttributes, HTMLTableSetting); return new HtmlString(html); }

public static HtmlString ToHtmlTable(this IHtmlHelper htmlHelper, System.Data.DataTable datatable , object tableAttributes = null, object trAttributes = null, object tdAttributes = null , HtmlTableSetting HTMLTableSetting = null) { var html = datatable.ToHtmlTable(tableAttributes, trAttributes, tdAttributes, HTMLTableSetting); return new HtmlString(html); } }


razor.cshtml 
C# @Html.ToHtmlTable(new[] { new { Name = "ITWeiHan", Age = "25", Gender = "M" } }) /* Hasil:
NameAgeGender
ITWeiHan25M
*/

ASP.NET MVC 5:   
Buat sebuah HtmlHelperExtension.cs
C# using System.Collections.Generic; using HtmlTableHelper; using System.Web; using System.Web.Mvc;

public static class HtmlHelperExtension { public static HtmlString ToHtmlTable(this HtmlHelper htmlHelper, IEnumerable enums , object tableAttributes = null, object trAttributes = null, object tdAttributes = null , HtmlTableSetting HTMLTableSetting = null) {

`
var html = enums.ToHtmlTable(tableAttributes, trAttributes, tdAttributes, HTMLTableSetting);
return new HtmlString(html);
}

public static HtmlString ToHtmlTable(this HtmlHelper htmlHelper, System.Data.DataTable datatable , object tableAttributes = null, object trAttributes = null, object tdAttributes = null , HtmlTableSetting HTMLTableSetting = null) { var html = datatable.ToHtmlTable(tableAttributes, trAttributes, tdAttributes, HTMLTableSetting); return new HtmlString(html); } }

Demo

Demo ASP.NET MVC 5 JQuery DataTable:
`C# using HtmlTableHelper; //.. public class HomeController : Controller { public ActionResult Index() { var datas = new[] { new { Name = "ITWeiHan", Age = "25",Gender = "M" } }; ViewBag.Table = datas.ToHtmlTable(); return View(); } }
C# @{ Layout = null; }

AspNetMvcDemo

@Html.Raw(ViewBag.Table)

Demo ASP.NET Core:

C# public class Startup { public void Configure(IApplicationBuilder app, IHostingEnvironment env) { app.Run(async (context) => { var sourceData = new[] { new { Name = "ITWeiHan", Age = "25",Gender = "M" } }; var tablehtml = sourceData.ToHtmlTable(); await context.Response.WriteAsync(tablehtml); }); } }

--- Tranlated By Open Ai Tx | Last indexed: 2025-06-30 ---