2008-09-11 7 views
6

Sayfa oluştururken "daha iyi" (örn. Temizleyici) HTML'yi denemek ve oluşturmak için ASP.NET geliştirme ekibimle çalışıyorum. Şu anda, .NET, JavaScript'i sayfaya dökmek gibi bir şey yapma, form kontrolleri için zorunlu bir zorunluluk haline getirme ve formların çalışamadığında JS'nin çalışmasına izin vermeme gibi kötü bir eğilime sahiptir. Bazı durumlarda, geliştirme zamanı tahminlerine dikkate değer bir yığın eklemeden, bunun üstesinden gelmek için mücadele ediyoruz..NET MVC bana ihtiyacım olan HTML/CSS/JS ayrımını verecek mi?

MVC ile önce - Struts in Java üzerinden - çalıştım ve bu durumda HTML sayfalarını tam olarak olmasını istediğim gibi tutabildiğimi fark ettim.

Bu gerçekten işe yaramıştı (Bu bakış açısı. Sonra delikleri doldurmak için Java programcılarına teslim Genellikle önceden geliştirilen "en iyi durumda" statik HTML dayanmaktadır) ve bazı üretmek başardık Gördüğüm CMS'den "en iyi" web sayfalarının listesi. .NET MVC bana ihtiyacım olan ayrımı verebilir mi, yoksa bunu test etmek için değerli geliştirme zamanını bir kenara bırakmak yanlış bir ekonomiye mi dönüşebilir?

.NET MVC bana bu ayrık denetim üzerinde ince ayarlı denetim uygulamıyorsa, .NET kodlama uygulamaları, kitaplıklar vb. Için her türlü öneri gerçekten yararlı olabilir.

cevap

5

ASP.NET MVC Framework size çok daha tanıdık bir ayırma sağlayacaktır. MVC Framework'de herhangi bir görünüm yoksa, JavaScript'in sayfalarınıza dökülmesinden endişe etmenize gerek kalmayacaktır. Gördüğünüz tek JavaScript, el ile eklediğiniz kullanıcılardır.

Çoğunlukla farklı bir çerçevede olduğu gibi HTML/CSS/JS'yi ayrı ayrı yapabilirsiniz.

+0

Farkında olmam gereken özel uyarılar var mı? – markedup

+0

Pek sayılmaz - HTML'yi kullanma ve ASP.NET MVC çerçevesinin deliklere girme perspektifinden geliyorsanız oldukça ileriye doğru. Stephen Walther'in sitesine şu adresten bakabilirsiniz: http://weblogs.asp.net/StephenWalther/ iyi bir ders kitabı ve http://asp.net/mvc –

3

Kullanacağınız görünüm motoruna bağlı olarak. Evet.

Ancak, yığın-taşması için sayfa kaynağına bakarak bunu kolayca kontrol edebilirsiniz. Zen bahçesi değil ama oldukça temiz.

Biraz daha açıklama:

sayfaların render görünümü motoru tarafından yapılır. Monoray ile olduğu gibi standart görünüm motorunu veya nVelocity veya Brail gibi mevcut olanları kullanabilirsiniz. http://www.chadmyers.com/Blog/archive/2007/11/28/testing-scottgu-alternate-view-engines-with-asp.net-mvc-nvelocity.aspx

Görüntüleme motoru HTML oluşturmaktan sorumlu olarak ortaya çıkan seçenekler sizin seçiminize bağlıdır. Ancak çoğu görünüm motorları, bu bağlamda vanilla ASP.Net

+0

Daha spesifik/teklif örnekleri olabilir misiniz, lütfen? Ben bir ASP kodlayıcısı değilim, o yüzden ne demek istediğinden emin değilim. Ekibime sunmak için alternatifler araştırmaya çalışıyorum. Şimdiden teşekkürler. – markedup

1

@Wrestlevania söyledi: .NET için

herhangi önerileri olabilir gerçekten yararlı olacağını vb uygulamaları, kütüphaneler, kodlama. ASP.NET'de kodlama yaparken yüksek düzeyde bir ayırma yapmayı denedim.

Ben asp kontrolleri önlemek ve temel html elemanları ile mümkün olduğunca sopa, ben ASP.Net sayfamıza ekstra CSS veya JS enjekte eğilimli olacak herhangi bir durumdan kaçabilirim. Örneğin, asp yerine span kullanın: literal, asp yerine düğmesi: düğmesi, vb

Kullandığım tek ASP denetimi, tablo oluşturmak için kullanılan yineleyicidir. İhtiyacım olan herhangi bir işlevsellik bir asp denetimine benzer olurdu, ya kendimi javascript'te uygularım ya da jquery gibi bir çerçeve kullanıyorum.

+0

için Kısıtlı olarak bu tür kısıtlılıklar etrafında çalışıyoruz, ama ASP kontrollerini tamamen terketmek için dirençle (ayrı sorun!) karşılaşıyorum. Şu anda çoğu JavaScript kodlaması için jQuery kullanıyorum ve ASP bazı ID'leri değiştirmekten başka işe yaramıyor. Teşekkürler. – markedup

0

Asp.Net MVC, html/css/js'yi ayrı tutmanıza engel olacak daha az özellik sunacak şekilde ayrı tutmanıza yardımcı olacaktır. Örneğin, HTML yardımcıları genellikle yalnızca şu şekilde döner: Html. Bu noktadan sadece sınıf özelliklerine bağlı olarak tüm stil bilgilerini tutmayı seçmekte özgürsünüz.

Ayrıca jQuery gibi bir kitaplıkla uyguladığınız uygulamalara da göz atmayı düşünün. Öğe türü, sınıf ve kimlik gibi şeylere bağlı olarak sayfa yükündeki öğelere olay işleme davranışları uygulayarak komut dosyası işlevselliğini tamamen js'nizde ve html'nizde tutmanın mükemmel bir örneğidir.

İlgili konular