SORU
22 Aralık 2008, PAZARTESİ


ASP.NET MVC - TempData - İyi ya da kötü uygulama

AcceptVerbs yöntemi ASP.NET MVC: girdileri form ile başa çıkmak için Scott Gu'nun Önizleme 5 blog yazısı ayrıntılı kullanıyorum

  • Kullanıcı ALMAK ile boş bir form alır
  • Kullanıcı mesaj aynı Eylemi posta yolu ile doldurulan form
  • Eylem Veri Doğrulama gerekli önlemleri alır ve yeni bir görünüm için yönlendirir

TempData kullanmak zorunda kalmayayım. Ben şimdi bu süreci adım, ve TempData kullanmak şart gibi görünüyor. onaylamak eklemek zorunda dedi

Nedense, tasarlanmış bir şey olduğunu TempData -- kullanarak karşı fobim var.

Bu geçerli bir endişe mi, yoksa uyduruyor muyum?

CEVAP
19 ŞUBAT 2009, PERŞEMBE


Hayır TempData bir isteksizlik var... Ama eğer düzgün kullanılırsa, şüphesiz kötü tasarım bir göstergesi olabilir. Eğer Huzurlu kullanıyorsanız, URL, TempData senin için YAZILAN Eylemler mesaj Eylemler OLSUN aktarılması için iyi bir uygulamadır. Bu göz önünde bulundurun:

Yeni/URL Ürünleri de bir form var. Şeklinde Mesajlar için Ürünler/Oluşturmak, hangi doğrular form oluşturur ve bu Ürün, Başarılı Denetleyicisi yönlendirir URL Ürünleri/1 ve üzerinde hata olur geri yönlendir ürünler/Yeni Hata İletileri görüntüler.

/1 sadece standart ürünler Ürün için aksiyon ALMAK, ama göstermek için bir mesaj eklemek bir başarı olduğunu belirten isteriz. TempData bunun için idealdir. Mesajı Gönderen Denetleyicisi TempData ve görünümünde mantık eğer bazı ve yapılan koymak ekleyin.

Başarısızlık değerleri formCollection girdi ve hata Mesajları bir koleksiyon Sonrası Eylemi TempData ekleme yapıyorum ve ilk Eylem için yönlendirme Sanayi/Yeni. Herhangi bir hata mesajı ile birlikte, daha önceden girilen değerler ile form girişleri doldurmak için Görünüm mantık ekledim. Güzel görünüyor ve bana temiz!

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CommonArtisan

    CommonArtisa

    7 Temmuz 2012
  • L- Crysis

    L- Crysis

    30 Aralık 2011
  • The White House

    The White Ho

    21 Ocak 2006