SORU
16 EYLÜL 2010, PERŞEMBE


'un ne kadar ASP.NET MVC Huzurlu?

KALAN son birkaç yıl için böyle bir popüler bir terim olmuştur (ya da öylesine) ASP.NET MVC silindir dışarı, herkes ASP.NET MVC ile ilgili. Ben de buzz için düştü ve ben de bilgi eksikliği, DİNLENME benim anladığım sadece şuydu:

= SEO/Kullanıcı dostu URL DİNLENME

Ama bundan daha fazlası var. Ve daha GERİSİ hakkında ne kadar az şey ile ASP.NET ben MVC ile ilgilidir. Elbette WebForms daha DİNLENMEK için çok yakın olacak. Yani gerçek şu ki, aslında tam tersi

≠ /Kullanıcı dostu URL SEO DİNLENME

Ve varsayılan rotanızı controller/action/id olarak tanımlanmış olmasıkesinlikleDinlendirici değil.

Beni bu anlama sorunum açıklamama izin verin.

Eğer ASP.NET MVC Huzurlu olsaydı, varsayılan geçit olarak tanımlanan zorunda kalmazdık:

controller/action/id

ama değil

resources/id  /* that would have to use HTTP methods GET/PUT/POST/DELETE */

Bu yüzden sahip (ayrıca istek yolu ile HTTP sağlayan yöntem) yerine:

/product/index/1  /* GET */
/product/create   /* POST */
/product/delete/1 /* POST */
/product/update/1 /* POST */

(HTTP yöntemi de burada verilir)

/products/1  /* GET */
/products    /* POST */
/products/1  /* DELETE */
/products/1  /* PUT */

Şimdi bu Huzurlu olurdu.İyi bir şey bu aslında mümkün. Ve eğer tamamen Rahat olun olsaydın da seni anlamına gelirAjax kullanmak zorundaçünkü PUT ve DELETE yöntemleri ile yapılamaz tarayıcı-tek istekleri (bu tamamen doğru değil1). Modern Ajax uygulamaları aslında tamamen Rahat olabilir.

Ajax istemci teknoloji ve gerçekten ASP.NET MVC ile bir ilgisi yok. Aslında ASP.NET MVC tamamen Dinlendirici bir uygulama olarak yapılabilir. Bunu başarmak için (Ajax) önemli değildir. (Darin Dimitrov için teşekkürler)

Ana soru

Neden Huzurlu bir çerçeve özellikle kendi URL ile ilgili yönlendirme gibi ASP.NET MVC olduğunu düşünüyor musunuz?Neden onlar için varsayılan URL rota tanımlama yoktuzorlamakRESTfulness? Ben aramıyorum tartışmacı cevaplar ama o aslında cevap soru - nasıl bu ilişki gel içine hayat... Belki ben hala kadar akıllı değiller ve hala bu kadar olmaması benim hakkında bilgi sahibi olur.

1Bilgi güncellendi

Aslında Ajax tam Dinlendirici bir mimari uygulamak için kullanmak zorunda değilsiniz. Asp.net MVC (sürüm 2 beri) HTTP yöntem geçersiz kılma, PUT veya DELETE yöntemleri tarayıcısı formları kullanarak sorunu, yani destekler. Tüm yapmanız gereken, ek gizli bir alan gibi ekleyin

<input type="hidden" name="X-HTTP-Method-Override" value="DELETE" />

Asp.net MVC çerçeve silme isteği olarak SİLMEK istemek HttpDeleteAttribute eylem yöntem seçici de anlayacaksınız talep böyle bir YAZI anlamak mümkün olacaktır. Geçersiz kılma FTW! HTTP Yöntemi

CEVAP
16 EYLÜL 2010, PERŞEMBE


Hiçbir şey HTTP yöntemleri ile resource/id gibi yolları/PUT/POST/ASP.NET SİL ALMAK zorunda engelliyor MVC var. Varsayılan yol Kur değil ama yapabilirsin.

DÜZENLE (MLaritz - Darin yorum Ekleme): ASP.NET MVC bir sunucu tarafı teknolojisi, Dinlendirici bir URL açmak için izin. Tüketilen bu şekilde bir önemi yok. ASP.NET MVC kolayca tüketimi için Dinlendirici URL getirebilir çünkü teknoloji Huzurlu ve cevap olarak kabul edilir neden sordun, bu kadar basit.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FUNKER530 - Veteran Community & Combat Footage

    FUNKER530 -

    25 Ocak 2007
  • hoorahjencar

    hoorahjencar

    6 HAZİRAN 2007
  • martin shervington

    martin sherv

    7 EKİM 2011