PDA

View Full Version : set ปี ค.ศ/พ.ศ ใน ASP.NET



JamBoe
11-09-2007, 04:59 PM
เคยไหมครับที่พัฒนา asp.net บนเครื่องตัวเอง แสดงเป็น ค.ศ แต่พออัพขึ้น Server กับแสดงเป็น พ.ศ แทน
นี่คือส่วนหนึ่งของวิธีแก้ครับ

**Hidden Content: Check the thread to see hidden data.**

hina_lovex
11-09-2007, 09:45 PM
Code ตัวอย่างการ set Localization จาก Web Site Microsoft ครับผม
ปกติ ถ้าเราต้องการ set ค่าใน .Net ให้ใช้วัน เวลา ที่เป็นภาษาไทย ถ้าจะ set ทั้ง Project ให้กำหนดที่ web.config โดยใส่ globalization ครับผม
<globalization uiculture="th" culture="th-TH" />

แต่กรณีที่จะกำหนดเฉพาะ หน้าจอให้ ใส่
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(selectedLanguage);
Thread.CurrentThread.CurrentUICulture = new CultureInfo(selectedLanguage);
ที่หน้าจอที่ต้องการแสดงผลวันที่เป็นภาษาไทยครับผม

ตัวอย่างจาก Web Site Microsoft ครับ

<%@ Page Language="C#" uiculture="auto" %>
<%@ Import Namespace="System.Threading" %>
<%@ Import Namespace="System.Globalization" %>
<script runat="server">
protected override void InitializeCulture()
{
if (Request.Form["ListBox1"] != null)
{
String selectedLanguage = Request.Form["ListBox1"];
UICulture = selectedLanguage ;
Culture = selectedLanguage ;

Thread.CurrentThread.CurrentCulture =
CultureInfo.CreateSpecificCulture(selectedLanguage);
Thread.CurrentThread.CurrentUICulture = new
CultureInfo(selectedLanguage);
}
base.InitializeCulture();
}
</script>
<html>
<body>
<form id="form1" runat="server">
<div>
<asp:ListBox ID="ListBox1" runat="server">
<asp:ListItem Value="en-US"
Selected="True">English</asp:ListItem>
<asp:ListItem Value="es-MX">Espa&ntilde;ol</asp:ListItem>
<asp:ListItem Value="de-DE">Deutsch</asp:ListItem>
</asp:ListBox>

<asp:Button ID="Button1" runat="server"
Text="Set Language"
meta:resourcekey="Button1" />


<asp:Label ID="Label1" runat="server"
Text=""
meta:resourcekey="Label1" />
</div>
</form>
</body>
</html>