2012-05-21 3 views
4

EF 프로젝트를 사용하는 ASP.NET MVC 4가 있습니다. . 내 날짜ASP.NET MVC 문화 변경 날짜/시간 형식

@model System.DateTime? 
@Html.TextBox("", String.Format("{0:d}", Model.HasValue ? Model : DateTime.Today), new { @class = "datefield" }) 

<link rel="stylesheet" href="http://code.jquery.com/ui/1.8.20/themes/base/jquery-ui.css" type="text/css" media="all" /> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script> 
<script src="http://code.jquery.com/ui/1.8.20/jquery-ui.min.js" type="text/javascript"></script> 

<script type="text/javascript"> 
$(function() { 
    $(".datefield").datepicker({ 
     changeMonth: true, changeYear: true, firstDay: 1, changeYear: true, 
     dateFormat: 'dd.mm.yy' 
    }); 
}); 

에 대한 Global.asax.cs

protected void Application_BeginRequest(object sender, EventArgs e) 
    {   
     CultureInfo objculture = new CultureInfo(Helios.MvcApplication.Lang); //Lang = en-US, ro-RO, fr-FR 

     //DateTimeFormatInfo objDTFI = objculture.DateTimeFormat; 
     //objDTFI.ShortDatePattern = "dd.MM.YY"; 
     //objDTFI.DateSeparator = "."; 
     //objculture.DateTimeFormat = objDTFI; 

     objculture.NumberFormat.CurrencyDecimalSeparator = "."; 
     objculture.NumberFormat.NumberDecimalSeparator = "."; 

     Thread.CurrentThread.CurrentUICulture = objculture; 
     Thread.CurrentThread.CurrentCulture = objculture; 
    } 

DateTime.cshtml // EditorTemplate 사용자가 로그인 할 내가 사용하는 경우 때 현재 스레드 문화를 변화 해요 : 문자열 ("{0 : MM-dd-yyyy}" String.Format ("{0 : yyyy-MM-dd} .MM.yyyy} " 작동하지 않습니다.

Q : 어떻게 모든 문화권/언어에 대해 "dd.MM.yyyy"으로 날짜/시간 형식을 변경할 수 있습니까?

+0

질문에 대한 명확하지 않습니다. 문화에 의존하는 형식이 아닌 특정 형식 (dd.MM.yyyy)으로 출력하도록하고 싶습니까? – Clafou

+0

당신이 뭘 찾고 있는거 아닌가요? http://stackoverflow.com/questions/3967222/need-parse-dd-mm-yyyy-to-datetime-using-tryparse – Mariusz

+0

그래, 내가 소수 구분 기호로 했어 – Misi

답변

1

오래된 질문에 대한 답을 찾았지만, 현재의 문화에 관계없이 문자열 형식을 변경할 필요가 다른 사람에 대한되었습니다

DateTime.Today.ToString("dd.MM.yyyy", CultureInfo.InvariantCulture)