SORU
9 ŞUBAT 2009, PAZARTESİ


MVC yanlış tarih biçimi ile DateTime bağlama

Asp.net-MVC şimdi örtülü DateTime nesneleri bağlantı sağlar. Çizgisinde bir eylem var

public ActionResult DoSomething(DateTime startDate) 
{ 
... 
}

Bu başarıyla bir DateTime içine bir ajax çağrısından bir dize dönüştürür. Ancak, tarih biçimi GG/AA/yyyy kullanıyoruz; MVC/GG/yyyy dönüştürüyor. Örneğin, '09/02/2009' DateTime '02/09/2009 00:00:00 yerel ayarları' ya 2 Eylül. sonuçları bir dize ile eylem çağrısı gönderme

Bir tarih biçimi uğruna kendi modelim için bağlayıcı rulo istemiyorum. Ama bir dize kabul ve DateTime kullanın eylemi değiştirmek için gereksiz gibi görünüyor.MVC eğer ayrıştırma benim için bunu yapabilecek biri.

DateTime tarih biçimi varsayılan model cilt içinde kullanılan değiştirmek için herhangi bir yolu var mı? Varsayılan model binder yerelleştirme ayarlarını kullan gerekmez mi?

CEVAP
9 ŞUBAT 2009, PAZARTESİ


Biraz daha ayrıntılı biraz googling ile: bu cevabı buldum

Melvyn Liman MVC tarihleri ile çalışır ve gerekirse bu geçersiz kılabilirsiniz nasıl ayrıntılı bir açıklama vardır:

http://weblogs.asp.net/melvynharbour/archive/2008/11/21/mvc-modelbinder-and-localization.aspx

Ayrıştırmak için değeri ararken, çerçevesi belirli bir düzen yani görünüyor:

  1. RouteData (yukarıda gösterilen)
  2. URI sorgu dizesi
  3. İstek formu

Bu sadece son kültür farkında ancak olacaktır. Yerelleştirme bir bakış açısıyla bunun için iyi bir nedeni vardır. Bir web uygulaması internette yayınlamak havayolu uçuş bilgilerini gösteren yazılı olduğunu hayal edin. O gün için bir bağlantıyı tıklatarak belirli bir tarih (http://www.melsflighttimes.com/Flights/2008-11-21 gibi bir şey belki de) uçuşları baktım ve ABD'de meslektaşım için bu bağlantıyı e-posta gönderilsin. Her iki veri aynı sayfaya bakıp olacağını garanti edebiliriz tek yolu ise InvariantCulture kullanılır. Eğer kitap için bir form uçağımı kullanıyorum, buna ek olarak, her şey sıkı bir döngü içinde gerçekleşiyor. Veri formu yazıldığında CurrentCulture saygı ve formdan geri gelirken saygı göstermelidir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Awesomesauce Network

    Awesomesauce

    4 EKİM 2012
  • EvilControllers

    EvilControll

    20 Ocak 2008
  • Jon Reed

    Jon Reed

    14 AĞUSTOS 2006