asp.net-mvc - 如何将 NPM 包与现有 C#/MVC 项目一起使用以在 Azure 上进行 git 部署?

标签 asp.net-mvc visual-studio azure npm webpack

我有一个相当大的.Net MVC 应用程序。服务器端代码全部是 C#,并且我有大量的客户端 TS。我的所有 JS 库都位于 Scripts 目录中,大部分由 Nuget 包放置在那里。我所有的 JS 都是使用 System.Web.Optimization.ScriptBundles 捆绑的。

我的应用程序通过 Git 部署到 Azure。

我想将一切切换为使用 NPM。我已经安装了 NPM,并安装了所有必需的模型。现在最好更改我的 ScriptBundle 以引用 node_modules 文件夹中的脚本吗?显然,node_modules 不是项目的一部分,那么这些文件会在 azure 部署中复制吗?

我将使用 Webpack 来添加网站的移动(单页应用程序)版本(在同一项目中)来捆绑 JS。我还可以使用 webpack 来捆绑 MVC 应用程序的 JS 吗?

谢谢, 〜S

最佳答案

所以您想使用 git 部署并将所有模块移动到 npm 存储库,然后部署到 azure Web 应用程序,对吧?

Azure Web Apps 有一个名为 Kudu 的开源运行时。一旦 webhook 通知它有新的推送,Kudu 就会负责获取和拉取您的源代码。

一旦 kudu 提取您的源代码,它就会开始编译和部署。值得一提的是,kudu 提供了用于更改构建和部署管道的钩子(Hook)。例如,您可以运行 npm install。

您可以在此处阅读有关 kudu 及其可扩展性的信息: https://github.com/projectkudu/kudu

https://github.com/projectkudu/kudu/wiki/Deployment

https://github.com/projectkudu/kudu/wiki/Custom-Deployment-Script

您应该能够在那里找到您需要的所有信息。

关于asp.net-mvc - 如何将 NPM 包与现有 C#/MVC 项目一起使用以在 Azure 上进行 git 部署?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43905798/

相关文章:

c# - CS1061 : 'IEnumerable<>' does not contain a definition for '' and no extension method '' accepting a first argument of type 'IEnumerable<>'

asp.net - 从 Global.asax 中获取操作的绝对 URL 路径

c# - 使用 Github Actions 将多项目 ASP.NET Core Web 应用部署到 Azure 应用服务

c# - ASP.Net MVC 3 中的文档查看器

c# - 无法定义使用 'dynamic' 的类或成员,因为编译器需要类型 'System.Runtime.CompilerServices.DynamicAttribute'

c++ - 截至 2017 年的 clang 5.0 pdb 支持

c# - 从 Visual Studio 2017 中的其他解决方案引用项目

.net - 几个 Visual Studio 项目提示缺少临时文件,因此无法打开。错误代码&H80070003

azure - 无法将 Azure-DevOps 与 Azure 容器注册表连接

sql-server - 作业数据库和目标数据库是否需要位于不同的服务器上?