ASP.NET 使用 VSCode 和 VS 2019 的核心前端开发人员工作流

ASP.NET Core front-end developer workflow with VSCode and VS 2019

我已经有几年没做过cshtml前端开发了

ASP.NET 核心前端开发人员在 Windows 上跨一系列工具工作的当前普遍接受的方式是什么?

我指的是一种构建前端 JS 和 .NET 项目并在浏览器和代码中快速工作的方法。

我的想法是。

我最初的想法是设置 NPM,然后使用 Gulp 之类的东西来启动所有内容,包括 运行 dotnet run.

然后当 运行 在 Visual Studio 2019 调试器下时,使用 Task Runner Explorer 启动 Gulp 部分但跳过 dotnet run 部分。

(遗憾的是似乎没有启动 VS(代码或 2019)和附加调试器的命令行)

现在我希望得到 "primarily opinion based" SO 击败,但在设计所有这些工具时有一些普遍的趋势和想法,以了解它们如何一起玩球以及开发故事的样子.

您几乎已经描述了这个过程。不过,我要补充几点:

  1. 您不需要 dotnet run 位。 Visual Studio和VS Code都可以直接调试

  2. 您可以在 Task Runner Explorer 中分配 gulp 任务来构建任务,因此您真的甚至不需要直接考虑 运行ning 那些。我不太确定 VS Code 的这方面,但我确定可能有一些扩展来处理它,如果它还没有 built-in.

  3. 如果你想真正轻松地开发,你能做的最好的事情就是使用 Docker。只需向每个实际 运行 的项目(即不是 class 库)添加一个 Docker 文件,然后设置构建步骤并在那里 运行 它。在 Visual Studio 中,您可以 right-click 项目并选择添加 > Docker 支持,它实际上会生成一个 ready-made Docker 文件,尽管您可能需要添加一两个步骤来处理 client-side 构建步骤。无论如何,这将成为真正的点击和 运行,无需担心。当你使用 docker-compose 时,情况会更好,因为那时 Visual Studio 和 VS Code 可以同时启动你的整个应用程序堆栈,包括外部依赖项,如数据库、Redis 实例等。如果你Docker 之前没用过,现在就开始吧。这对开发来说绝对是革命性的。

CI/CD 的注意事项,您应该尽可能添加一个 YAML 文件来描述您的 CI/CD 管道。根据您为 build/release 使用的实际提供商,可能存在一些差异,因此请查阅相关文档。 (例如,Azure DevOps 目前不支持在 yaml 中描述发布管道,但您仍然可以那样进行构建。)无论如何,这允许您在代码中配置所有这些,并将其提交给源代码控制.

您可以考虑对您的基础设施进行同样的考虑。 Azure 有 ARM 模板,AWS 有 CloudFormation,GCP 有 Deployment Manager。还有 third-party 工具,例如 Terraform 或 Ansible。所有这些都以某种形式或方式(通常是 JSON 或 YAML)允许您定义要部署到的基础架构的所有特征并将其提交给源代码控制。这使得部署和创建新环境之类的事情变得轻而易举。