2011-12-17 16 views
9

ASP.NET MVC ekibinin asp.net mvc 4 geliştirici önizlemesinde oldukça önemli bir hata yayınladığını düşünüyorum veya aptalca bir şey yapıyorum ... İşte sorun ve yeniden üretme adımları.ASP.NET MVC 4 Dev Önizleme Jilet, Bölümler Hata

  1. yeni MVC 4 mobil uygulama
  2. düzeninde yeni bir bölüm oluşturmak oluşturun (ex. @RenderSection ("kafa", false)) kontrolör eylem
  3. sadece ViewBag içine Mesaj atmak
  4. daha sonra ana düzeni kullanan bir görünümde, aşağıdaki kodu aşağıya ekleyin.
@section head { 
    $(function() { 
     var newVariableName = "@(ViewBag.Message)"; 
    }); 
} 

Sen jilet ayrıştırıcı aslında bölüm yerine bölümün bitiş omurganın parantezi kapatan yüklenen dom jquery için tamamlandığını düşünen göreceksiniz. Aynı kodu bir asp.net MVC 3 uygulamasında denedim ve sorun olmadan çalıştı.

ASP.NET MVC 4 Geliştirici Önizlemesinde bu hatayla karşılaşan başka biri var mı?

+0

evet, ben! çıktı olarak eksik javascript kodunuz var, değil mi? – tugberk

+0

Yea, temel olarak sonlandırıldı. Bu geliştirici önizlemesi, bu saçma bir hatayla nasıl serbest bırakıldı? Ayrıca, hiç kimse bunun hakkında bir şey göndermedi! –

+0

Aslında bunu yayınlamayı denedim ama her zaman sorunun kodumda olduğunu düşündüm (javascript kodum biraz karmaşıktı). Yani geliştirici önizlemesi, fazla bekleyemezsiniz. Ayrıca, go-live lisansınız yok. doğru olduğunu biliyorsun? Eğer dev. önizleme, makinenizi havaya uçurur, MSFT'de değil, üzerinizdedir. – tugberk

cevap

6

Bu sorunu çözmek için hızlı bir şekilde kesmek, java komut dosyasının etrafında < metin> bloklarını </text> kullanmaktır. ASP.NET MVC ekibi bu hatayı çözene kadar nasıl görünebilir.

@{ 
<text> 
    $(function() 
    { 
     var newVariableName = "@(ViewBag.Message)"; 
    }); 
</text> 
} 
0

Yukarıda belirtildiği gibi, cshtml dosyasında bu deneyin ...

@section head { 
@{ 
    function JSMeth1() 
    { 
     // doing your stuff, razor parser wont suck 
    } 
}}