2014年1月26日 星期日

名稱 'Styles' 不存在於目前內容中

The Name 'Scripts' Does Not Exist in the Current Context


在MVC空白範本時, 因為沒有 Layout.cshtml , 所以就自己新增了一個, 並加入了 @Style 或是 @Script, 例如 : 
@Scripts.Render("~/bundles/jqueryval")

執行時發生錯誤 :
名稱 'Styles' 不存在於目前內容中

解決方法 : 
  1. 刪除 @Style 和 @Script 程式碼
  2. 用其他的範本(例如網際網路範本)
  3. 安裝Optimization
  • Step 1 : 用 NuGet 安Optimization
    打開 [工具>程式庫套件管理員>套件管理器主控台] 執行
    PM> Install-Package Microsoft.Web.Optimization -Pre
    內容 : http://www.nuget.org/packages/Microsoft.Web.Optimization
  • Step 2: 在 config 檔案裡面加入 namespace reference
    以下兩個Web.config都要加入 : 

    根目錄下的 Web.config : 

    <configuration>
      <system.web>
        <pages>
          <namespaces>
            <add namespace="System.Web.Optimization" />
          </namespaces>
        </pages>
      </system.web>
    </configuration>

    Views 資料夾下的Web.config : 
    <configuration>
      <system.web.webPages.razor>
        <pages pageBaseType="System.Web.Mvc.WebViewPage">
          <namespaces>
            <add namespace="System.Web.Optimization" />
          </namespaces>
        </pages>
      </system.web.webPages.razor>
    </configuration>


現在可以正常執行了

沒有留言: