簡體   English   中英

無法訪問ASP.NET MVC的View文件夾內的JavaScript文件

[英]Cannot access JavaScript files inside View folder in ASP.NET MVC

我試圖在我的mvc項目中添加AngularJS。

這是我的捆綁包配置

  public static void RegisterBundles(BundleCollection bundles) {

           bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                    "~/Scripts/jquery-{version}.js"));

            bundles.Add(new ScriptBundle("~/bundles/angularjs").Include(
                       "~/Scripts/angular.js",
                        "~/Scripts/angular-ui-router.js"));

               bundles.Add(new ScriptBundle("~/bundles/appscripts").Include(
                   "~/Areas/app.module.js",
                   "~/Areas/app.component.js",
                   "~/Areas/app.routes.js",

     bundles.Add(new ScriptBundle("~/bundles/appcomponents").Include(
      "~/Areas/Home/Views/Default/default.component.js"));
        }

_Layout.cshtml

    @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/angularjs")
    @Scripts.Render("~/bundles/appscripts")
    @Scripts.Render("~/bundles/appcomponents")
    @RenderSection("scripts", required: false)

我能夠添加~/bundles/jquery~/bundles/angularjs~/bundles/appscripts

在此處輸入圖片說明

但我無法添加~/bundles/appcomponents並且此腳本出現404錯誤。

在此處輸入圖片說明

我還嘗試了直接在_layout.cshtml中添加腳本文件

<script src="~/Areas/Home/Views/Default/default.component.js"></script>

和我得到同樣的錯誤。

我不確定為什么無法從Views文件夾添加任何腳本。

誰能讓我知道如何在捆綁包配置中添加此腳本文件?

出於安全原因, View文件夾中的web.config阻止從瀏覽器訪問文件。 不過,您可以將其配置為允許-

<?xml version="1.0"?>

<configuration>
  <configSections>
  ...        
  <system.webServer>
    <handlers>
      <remove name="BlockViewHandler"/>
      <add name="BlockViewHandler" path="*.js" verb="*" 
          preCondition="integratedMode" 
          type="System.Web.HttpNotFoundHandler" />
    </handlers>
  </system.webServer>
   ...
</configuration>

在此處輸入圖片說明

是我類似於這個問題的答案,但它與cshtml文件有關。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM