Web Analytics

HtmlTableHelper

⭐ 42 stars Persian by mini-software

NuGet


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


ویژگی‌ها

نصب

شما می‌توانید این بسته را از NuGet با استفاده از Visual Studio Package Manager یا رابط کاربری NuGet نصب کنید:

PM> install-package HtmlTableHelper

یا با استفاده از خط فرمان dotnet:

dotnet add package HtmlTableHelper

دموی Fiddle:

شروع کار

##### مثال لیست/آرایه/Set/Enumerable از نوع غیر کلید/مقدار ``C# using HtmlTableHelper; .. var sourceData = new[] { new { Name = "ITWeiHan", Age = "25",Gender = "M" } }; var tablehtml = sourceData.ToHtmlTable(); /* نتیجه:

NameAgeGender
ITWeiHan25M
*/

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

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

سفارشی‌سازی ویژگی‌های جدول/TR/TD/TH (نوع داینامیک)

C# var data = /List/Array/Set/Enumrable../; var html = data.ToHtmlTable( tableAttributes: new { @class = "SomeClass"} //این یک نوع داینامیک است و از همه ویژگی‌ها پشتیبانی می‌کند ,trAttributes: new { ID = "SomeID" },tdAttributes: new { width = "120 px" },thAttributes: new { @class = "dark-theme" } ); /* نتیجه:
..
..
*/

##### توضیحات ویژگی‌ها

###### 1. Display :

C# public class ModelClassWithDisplayAttr { [TableColumn(DisplayName = "ستون1")] //ویژگی MyProperty1 متن داخلی thead-td را به صورت "ستون1" نمایش می‌دهد public string MyProperty1 { get; set; } [TableColumn(DisplayName = "ستون2")] //ویژگی MyProperty2 متن داخلی thead-td را به صورت "ستون2" نمایش می‌دهد public string MyProperty2 { get; set; } }

###### ۲. Skip :
C# public class ModelClassWithSkipAttr { [TableColumn( Skip = true)] public string MyProperty1 { get; set; } //MyProperty1 در خروجی HTML نمایش داده نمی‌شود public string MyProperty2 { get; set; } }

##### HTMLTableBuilder

###### HtmlCaption

C# var soucreData = new []{ new {MyProperty1="test",MyProperty2=123} }; var html = soucreData.CreateBuilder() .SetCaption("این یک کپشن است", new { id = "CaptionId" }) .ToHtmlTable(); //نتیجه :
این یک کپشن است
MyProperty1MyProperty2
test123

##### HTMLTableSetting

پیکربندی کدگذاری InnerHtml (توصیه می‌شود بدون دلیل خاصی این کار انجام نشود، به دلیل حملات XSS)

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

//کدگذاری پیش‌فرض var encodinghtml = sourceData.ToHtmlTable(); //نتیجه:

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

var htmltablesetting = new HTMLTableSetting() { IsHtmlEncodeMode = false }; var notEncodinghtml = sourceData.ToHtmlTable(HTMLTableSetting: htmltablesetting); //نتیجه:

..ITWeiHan..

Extension

ASP.NET Core MVC: یک فایل 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" } }) /* نتیجه:
NameAgeGender
ITWeiHan25M
*/

ASP.NET MVC 5:   
یک فایل 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) {

`csharp
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); } }

دموی نمونه

دموی 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)

دموی 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 ---