ฉันเพิ่งสร้างโครงการ ASP.NET MVC 4 และใช้ Visual Studio 2012 RC เพื่อสร้างมุมมองคอนโทรลเลอร์และมุมมองมีดโกนสำหรับIndex
และการCreate
ทำงาน
เมื่อฉันมาเพื่อเรียกใช้แอปพลิเคชันและเรียกดูไปยังCreate
ข้อผิดพลาดต่อไปนี้ก็ปรากฏขึ้น:
ข้อความแสดงข้อผิดพลาดของคอมไพเลอร์: CS0103: ชื่อ 'สคริปต์' ไม่มีอยู่ในบริบทปัจจุบัน
ปัญหาคือรหัสต่อไปนี้ซึ่งถูกเพิ่มโดยอัตโนมัติที่ด้านล่างของมุมมอง:
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
ทำไมสคริปต์ไม่มีอยู่?
ฉันดูที่คลาสเว็บเพจพื้นฐานในแอสเซมบลี System.Web.Mvc.dll, v4.0.0.0
ฉันสามารถดูคุณสมบัติผู้ช่วยต่อไปนี้ได้:
- อาแจ็กซ์
- html
- url
แต่ไม่มีชื่อสคริปต์
ความคิดใด ๆ
แก้ไข:
ไฟล์ Web.config ของฉันมีลักษณะดังนี้ (ไม่ถูกแตะต้องจากไฟล์ Visual Studio ที่สร้างขึ้น):
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
</namespaces>
</pages>
</system.web.webPages.razor>
แก้ไข # 2:
ผู้คนกำลังเขียนบล็อกเกี่ยวกับการใช้ตัว@Scripts
ช่วย:
แต่ฉันเพิ่งติดตั้ง Visual Studio 2012 RC ไปยังการติดตั้ง Windows 8 ใหม่ฉันยังคงไม่สามารถใช้งาน@Scripts
ได้แม้ว่า Visual Studio จะเพิ่มเข้าไปในวิวที่สร้างขึ้น!
วิธีแก้ไขมีดังนี้
ฉันไม่แน่ใจว่าจะปิดสิ่งนี้ได้อย่างไรเนื่องจากในตอนท้ายการอัปเดตดูเหมือนจะแก้ไขปัญหาได้ ฉันตรวจสอบอีกครั้งฉันทำการติดตั้งใหม่ทั้งหมดโดยใช้โครงการใหม่ แต่โครงการความล้มเหลวเดียวกันฉันได้ทำงานได้ดีในขณะนี้หลังจากการปรับปรุงต่างๆและไม่มีการแทรกแซงด้วยตนเองชัดเจน ขอบคุณสำหรับความคิดทั้งหมด แต่มีปัญหาในเวลานั้น)
<system.web.webPages.razor> <pages pageBaseType=""> <add namespace="System.Web.Mvc" /> <add namespace="System.Web.Mvc.Ajax" /> <add namespace="System.Web.Mvc.Html" /> etc... </pages>