2012-03-14 8 views
21

(cassini) doğru olduğundan ancak tam IIS sunucusuna dağıtıldığında sonuçen-ABD tarihlerini asp.net için tr-GB olarak nasıl değiştirebilirim? Bir geliştirici makinesinde

03/14/2012 

sunucu kümesi olduğu

14/03/2012 

yılında

new DateTime(2012,3,14).ToString("d") 

sonuç kontrol panelinde/Bölge dilindeki tüm İngilizce/İngiltere/GB, komut isteminde çalışma tarihi dd/MM/YYYY biçimini döndürür.

Site, hem uiCulture="en-GB" hem de culture="en-GB" için ayarlanır ve bunlar web.config küreselleşme etiketinde gösterilir.

Ben zorunlu kültür

new DateTime(2012,3,14).ToString("d", new CultureInfo("en-GB")); 

ekleyerek bu soruna geçici bir çözüm olabilir ama gerçekten yanlış biçimde ayarlanması olup bittiğini bilmek istiyorum.

CultureInfo.CurrentCulture.Name, CultureInfo.CurrentUICulture.Name 

hem dönüş


  • en-US tr-TR: M/d/yyyy (örn 3/14/2012)
  • tr-TR: dd/MM/yyyy (örneğin 14/03/2012)
<globalization requestEncoding="UTF-8" responseEncoding="UTF-8" uiCulture="en-GB" culture="en-GB" /> 
+0

Post 'web.config' ait' globalization' bölümünden pasajı. Tarih ve sayıları dönüştürmek için kullanılan yer, System.Threading.Thread.CurrentThread.CurrentCulture'dan gelir; Bu hangi kültürü geri döndürüyor? –

+0

Konu dışı: IIS'deki üretimde aynı sonuçları elde etmek için Casini yerine IIS Express kullanmayı düşündünüz mü? – Richard

cevap

26

web.config'deGerçek değer ben varsayarak, bu senin web.config yılında

<globalization culture="en-GB"/> 
+1

Bence sorunun kendisi * Site hem uiCulture = "en-GB" hem de culture = "en-GB" için ayarlandı ve bunlar web.config globalization etiketinde gösteriliyor. * – V4Vendetta

+0

Bu, eğer isterseniz Daha fazla al, bunu makineye de ekleyebilirsiniz.C: \ Windows \ Microsoft.NET \ Framework \ [çerçeve sürümü] \ Config \ Machine.config (veya benzeri bir yol) dosyasında yapılandırma dosyası. Daha sonra değişiklik tüm .NET uygulamalarına uygulanır, ancak sunucudaki genel globalleşme ayarlarını etkilemez. –

+0

Anlayışım, web.config'ın küreselleşme etiketinin yalnızca UTF-8 ayarını incelemeye başlamasından önce makinenin ilk örneği olan machine.config – rob

4

sonra

<globalization culture='auto' uiCulture='auto' /> 

ve eklemek web.config içine bu koyarak çalışan başardı tarayıcı, tercih edilen yerel ayarı geçirecek şekilde doğru şekilde yapılandırılmışsa, isteği işleyen iş parçacığının CurrentCulture ve CurrentUICulture doğru şekilde ayarlanmış olması gerekir. .

Yerel olarak bağımlı olan tüm işlemler (DateTime biçimi d gibi) istemcinin tercihini kullanır. MSDN'deki web.config

Küreselleşme elemanı: https://msdn.microsoft.com/en-us/library/ydkak5b9(v=vs.71).aspx

+0

'u çalıştırmasıydı ve tarayıcının suçlu olmadığını doğrulamak için birden fazla tarayıcı/makine denedim. – rob

+1

, herhangi bir istemci için hala otomatik ABD'yi otomatik olarak denedi – rob

+0

@rob HTTP isteğinin "Kabul Etme Dili" başlığı nedir? ([Fiddler] (http://www.fiddler2.com/fiddler2/) bu durumlarda inanılmaz derecede faydalı bir araçtır. – Richard

İlgili konular