angular - 找不到 Angular 和 MVC 4.7.2 捆绑包
问题描述
我在本地 IIS 上使用 Angular 托管 WebApi。当我在本地从 Visual Studio 运行应用程序时,它工作正常,但在部署到本地 IIS 时,我在 Web 浏览器控制台中收到以下错误:
我有_Layout.cshtml
以下代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<title>@ViewBag.Title</title>
<base href="/MyAppName/">
@Styles.Render("~/Content/Styles")
</head>
<body>
<div>
@RenderBody()
</div>
@Scripts.Render("~/Script/Bundles")
</body>
</html>
这是我的BundleConfig.cs
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new Bundle("~/Script/Bundles").Include(
"~/dist/runtime.*",
"~/dist/polyfills.*",
"~/dist/main.*"
));
bundles.Add(new Bundle("~/Content/Styles").Include("~/dist/styles.*"));
}
并且Web.Config
配置如下:
<rewrite>
<rules>
<rule name="Angular" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />
</conditions>
<action type="Rewrite" url="MyAppName" />
</rule>
</rules>
</rewrite>
我正在努力找出问题所在。我不知道我是否缺少一些 IIS 配置,因为正如我所说,在发布模式下从 Visual Studio 运行它工作得很好。
我错过了什么?
编辑:
我发现了问题,问题是我捆绑了已经缩小的文件,我认为 .NET 对此并不满意。
我通过添加以下内容解决了该问题:
BundleTable.EnableOptimizations = false;
这解决了问题!
解决方案
我发现了问题,问题是我捆绑了已经缩小的文件,我认为 .NET 对此并不满意。
我通过添加以下内容解决了该问题:
BundleTable.EnableOptimizations = false;
这解决了这个问题,但给了我另一个。页面第一次加载很好,但刷新后我得到 404。仍然有一些路由器问题,因为我在同一个应用程序中托管 Angular 和 WebAPI,但这是另一个线程。
推荐阅读
- jdbc - Kafka 连接 SourceTask 的 commit() 和 commitRecord() 方法
- laravel - Laravel 无法在 SMTP 上进行身份验证
- fastreport - 试图消除在 fastreports 上通过电子邮件发送第 2 页
- wix - Wix 引导程序有条件安装
- python - 具有时间序列数据的子图
- c - C 中未定义的行为
- swift - 使用枚举实现 Maybe 类型
- java - Quarkus 应用程序的 GraalVM 本机映像在 ARMv7(32 位)设备 (IoT) 上运行
- sql - SQL:将 +1 替换为 +44
- flutter - 如何在 MobX Flutter 中对复杂结构运行反应