2013-01-13 18 views
7

Üzerinde çalıştığım bir projede, MVC4 web sitemiz bir Razor ve Angular.js bileşimini kullanıyor. Ön taraftaki web geliştirmeye oldukça yeni oldum, bu iyi bir fikir olup olmadığı konusunda kafam karıştı. Bunları karıştırmanın avantajları ve dezavantajları nelerdir ve bunların her ikisini birlikte kullanmanın bazı mantıksal özellikleri nelerdir?Bir MVC4 ortamında Razor ve Angular.js'yi kullanma

cevap

6

AngularJS + MVC4/Razor ile tecrübemizi paylaşabilirim: Sadece yerelleştirme için Razor kullanıyoruz - bu yüzden sadece Razor özelliğinin "@somekeyword" olmasına izin verilir. Müşteri tarafında sonuç olarak, yerel AngularJS şablonlarını aldık. Bu maksimum önbelleğe alma (CDN kullanarak bile) yapmanıza izin verir.

MVC4'te JSON verilerini göndermek için ASP.NET Web API'sini kullanıyoruz. HAL (Hiper ortam) yanıtlarını göndermek için geliştirici uzantısı yapardık.

Bu, maksimum dekuplaj ve gerekirse başka bir arka uçta değişiklik yapma imkanı verir.

+0

Aynı teknoloji yığınıyla çalışıyorum. Bir şablon sayfasını Açısal rotalarda (örneğin,// ​​bir yerlerde/parsiyel/mypartial.html) referans gösterip gösteremeyeceğini biliyor musunuz ve daha sonra Razor motor tarafından oluşturulan bir '/ somewhereelse/partials/mypartial.cshtml' sayfasından mı? Bu şekilde, kısmi çevrilmiş kaynak dizelerini içerebilir. Teşekkürler! – superjos

+3

@superjos Bunu böyle referans gösteremezsiniz, ancak bir Denetleyici Eylemi oluşturabilirsiniz. 'public PartialViewResult Kısmi (dize adı) {return PartialView (name); } ' Ardından şu numarayı arayın: '/controller/Kısmi? Name = mypartial' –

+0

teşekkürler, bu aşağı yukarı izlediğim yol. \/Denetleyiciler/Şablonlar/{eylem}/{templateName} gibi MVC yolları burada {action} alanları * işlevsel * alanları ayırmak için kullanılır ve/Views/Templates/'içindeki bir klasöre karşılık gelir. Her klasörün içinde farklı şablonlar bulunur. Eylemi klasör adına da eşlemek için özel bir ViewEngine gerekir. – superjos