Convert Datetime จาก ค.ศ. เป็น พ.ศ. ใน Razor Template

Chonlasith Jucksriporn
odds.team
Published in
1 min readMar 14, 2018

ใน C# ที่ใช้ Razor Template Engine เช่นในแอพที่เป็น MVC หรือเอา RazorLight Package มาใช้ในการ render ตอนเวลาต้องการ render วันที่ที่เป็น string ที่เป็นปี ค.ศ. เช่น “2018–02–17T01:22:38” ให้เป็นปี พ.ศ. จะต้องทำการ convert ก่อน โดยอาจจะ convert ตั้งแต่ใน app เอง หรือจะ convert ใน template ก็ได้

ถ้าต้องการ convert ใน template สามารถทำได้ด้วยวิธีนี้

@using System
@using System.Globalization
@{
var ISOFormat = "s";
var ThaiCulture = new CultureInfo("th-TH");
var ConfirmDate = DateTime.ParseExact(Model.ConfirmDate, ISOFormat, CultureInfo.InvariantCulture);
var ConfirmDateTH = Convert.ToDateTime(ConfirmDate, ThaiCulture);
}
วันที่ @Raw(@ConfirmDateTH.ToString("dd MMM yyyy", ThaiCulture))

ในบรรทัดสุดท้ายจะเป็นตอนที่เอาไปแสดงผล

ง่าย ๆ เท่านี้เลย

ping back: http://www.chonla.com/convert-datetime-from-ce-to-be-in-razor-template/

--

--