خودتون پیاده سازی کنید
مدل
public class DomainModel { public string Foo { get; set; } }
اکشن
public ActionResult Index() { // fetch the domain model from somewhere var domain = Enumerable.Range(1, 5).Select(x => new DomainModel { Foo = "foo " + x }); // now build the view model // TODO: use AutoMapper to perform this mapping var model = domain.Select((element, index) => new MyViewModel { RowNumber = index + 1, Foo = element.Foo }); return View(model); }
ویو
@model IEnumerable<MyViewModel> @{ var grid = new WebGrid(Model); } @grid.GetHtml( columns: grid.Columns( grid.Column("RowNumber"), grid.Column("Foo") ) )
@model IEnumerable<DomainModel> @{ var grid = new WebGrid(Model.Select((element, index) => new { element, index })); } @grid.GetHtml( columns: grid.Columns( grid.Column("RowNumber", format: item => item.index + 1), grid.Column("Foo", format: item => item.element.Foo) ) )
دوست گرامی برای اینکه بتونی توی gridmvc شماره ردیف داشته باشی باید بصورت زیر بنویسی:
int Row = 0; var AkhbarAmozeshi = (from t in talash.Tbl_TarifeAmozeshiVaParvareshi join s in talash.Tbl_SabtAmozeshiVaParvareshi on t.TArifID equals s.TArifID where s.TArifID == 1 select new { s.SabtID, s.Title, s.Date, s.time }).OrderByDescending(k => k.Date).OrderByDescending(k => k.time).ToArray(); var SelectAkhbarAmozeshi = (from b in AkhbarAmozeshi select new { b.SabtID, b.Title, b.Date, b.time, rn = ++Row }).ToList();
در این مثال ابتدا یک متغیر به نام Row ایجاد شده است. ابتدا یک select زده شده و اطلاعات از جداول استخراج شده است.
Select دوم ، Select اول را به عنوان منبع داده دریافت می کند. در این Select باید متغیر Row را اضافه نماییم با Row++.
در Gridmvc هم به شکل زیر استفاده می کنید:
@Html.Grid(SelectAkhbarAmozeshi).Columns(columns => { columns.Add(c => c.rn).Titled("ردیف"); columns.Add().Sanitized(false).Encoded(false).RenderValueAs(c => c.Title == null ? "" : c.Title).Titled("عنوان خبر "); columns.Add().Sanitized(false).Encoded(false).RenderValueAs(c => c.Date == null ? "" : c.Date).Titled("تاریخ درج حبر "); columns.Add().Sanitized(false).Encoded(false).RenderValueAs(c => c.time == null ? "" : c.time).Titled("ساعت درج حبر "); columns.Add().Sanitized(false).Encoded(false).RenderValueAs( c => "<form method='post'><input type='hidden' name='SabtID' value=" + c.SabtID + "><button type='submit' class='btn btn-danger' id='btndeleteproduct' formaction='/Admin/GoToEditKhabarAmozeshiDiv'>انتخاب</button></form>").Titled("ویرایش "); columns.Add().Sanitized(false).Encoded(false).RenderValueAs( c => "<form method='post'><input type='hidden' name='KhabarID' value=" + c.SabtID + "><button type='submit' class='btn btn-danger' id='btndeleteproduct' formaction='/Admin/DeleteAkhbareFaaliateAmozehi'>حذف</button></form>").Titled("حذف "); })
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)