在asp.net mvc中构建之前,包括由angular-cli生成的构建文件

时间:2017-12-02 19:31:26

标签: asp.net-mvc angular-cli

我正在努力解决由nodejs生成的文件需要包含在构建中的问题。它在本地开发中运行良好,但是当我想发布它时,它不会包含文件fron dist文件夹来构建,应用程序将没有dist文件夹。任何人都可以帮忙吗?

注意: - 每次创建文件时名称都不同,所以我无法选择和包含它们。我正在使用2017年的视觉工作室。我希望我能解释这个问题或让我知道我可以尝试更好。提前致谢

2 个答案:

答案 0 :(得分:0)

您需要将静态文件放在wwwroot文件夹下,以便在生产服务器上访问它们。

要包含这些文件以供发布,最简单的选择是在发布开始之前将它们添加到wwwroot,否则它们将被忽略。

另一种选择是告诉MSBuild明确包含文件。 您可以在<Target Name="NgBuildAndAddToPublishOutput" AfterTargets="ComputeFilesToPublish">找到如何自定义项目文件的示例。

答案 1 :(得分:0)

您可以使用--output-hashing=none的Angular CLI构建生产环境,如下所示:

ng build --prod --output-hashing=none

然后将生成的js文件包含到您的项目文件(csproj)中。然后使用BundleTable.EnableOptimizations = true;和BundleConfig.cs中的脚本捆绑包通过ASP.NET(而不是Angular-cli)为您生成哈希。