programing

ASP.NET에서 날짜 형식을 글로벌하게 설정하는 방법은 무엇입니까?

newstyles 2023. 7. 13. 20:44

ASP.NET에서 날짜 형식을 글로벌하게 설정하는 방법은 무엇입니까?

ASP.NET에서 날짜 형식을 글로벌하게 설정하는 방법은 무엇입니까?

로컬 컴퓨터와 서버의 국가별 설정이 "영어(뉴질랜드)"로 설정되어 있습니다.

날짜 형식을 지정할 때dd/MM/yyyy보기를 기대합니다.19/11/2008예를 들어 오늘은

최근까지 로컬 컴퓨터와 서버 모두에서 실제로 이 작업을 수행했습니다.

바로 최근에, 어떤 불가사의한 이유로, 우리 지역의 기계들은 아주 약간 변했습니다.여전히 "영어(뉴질랜드)"로 설정되어 있지만 날짜 구분 기호가 다음과 같이 변경되었습니다./로.-여전히 "영어(뉴질랜드)"를 표시하는 서버에서 동일한 변경이 발생하지 않았습니다./날짜 구분 기호입니다.

이제 로컬 컴퓨터의 경우, 형식은dd/MM/yyyy알겠습니다19-11-2008대신에19/11/2008.

이것은 약간 당황스럽습니다.

지금까지 내가 볼 수 있는 유일한 방법은 슬래시를 탈출하여 형식을 다음과 같이 설정하는 것입니다.dd\/MM\/yyyy효과가 있는 것 같지만, 이상적인 해결책은 아닌 것 같습니다.

누구 좀 도와주시겠어요?

참고: 이는 인트라넷 애플리케이션을 위한 것이며 진정한 세계화에는 관심이 없습니다.저는 날짜 형식을 수정하고 제게 변경을 시키지 않기를 원합니다.

Global.asax 파일에서 현재 스레드 문화를 변경하고 다음과 같은 날짜 형식을 재정의할 수 있습니다.

using System.Globalization;
using System.Threading;

//...
protected void Application_BeginRequest(Object sender, EventArgs e)
{    
  CultureInfo newCulture = (CultureInfo) System.Threading.Thread.CurrentThread.CurrentCulture.Clone();
  newCulture.DateTimeFormat.ShortDatePattern = "dd-MMM-yyyy";
  newCulture.DateTimeFormat.DateSeparator = "-";
  Thread.CurrentThread.CurrentCulture = newCulture;
}

web.config에서 다음 설명서에 따라 태그를 설정합니다.

<system.web>
    <globalization  culture="en-NZ"  uiCulture="en-NZ"/>
</system.web>

좋은 방법은 웹을 구성하는 것입니다.구성, 날짜 형식이 aspx의 모든 구성 요소에 나타납니다.

<system.web>    
<globalization uiCulture="en" culture="en-NZ" />
</system.web>

조작 없이도 문화를 설정할 수 있습니다.


using System.Globalization;
using System.Threading;

//... protected void Application_BeginRequest(Object sender, EventArgs e) {
Thread.CurrentThread.CurrentCulture = Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-NZ"); }

오래된 게시물이지만 여기에 언급하는 것이 유용할 것이라고 생각했습니다. 제 문제는 OP가 질문한 것과 같은 것이었지만, 해결책은 제어판이 아닌 IIS에서 문화가 변경된 것이었습니다.

IIS에는 자체 문화 선택 항목이 있으며, 기본적으로 로컬 컴퓨터 문화를 따릅니다.하지만 어떤 이유에서인지, 그것은 다른 문화로 바뀌었고, 저는 이상한 데이트 형식들을 얻기 시작했습니다.

여기에서 더 많은 을 찾을 수 있습니다.

형식 문자열의 경우 문자 / 형식이 실제로 문자 "/"로 확인되지 않습니다.대신 국가별 설정에 구성된 현재 날짜 시간 구분 기호로 확인됩니다.DateTimeFormatInfo를 변경해 보십시오.DateSeparator 속성입니다.

자세한 내용은 http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx 을 참조하십시오.

언급URL : https://stackoverflow.com/questions/300841/how-do-you-globally-set-the-date-format-in-asp-net