我有一个集成了 WebpackDevMiddleware 的 Asp.Net 核心应用程序。该 WebpackDevMiddleware 为使用 NPM 命令构建的客户端资产提供服务。现在我想在项目运行时同时构建和服务这些客户端资产(JS/CSS)。
我认为明显的解决方案是在项目中添加(预构建事件命令行)并提供 npm 命令。不利的一面是,当我使用 dotnet core sdk 构建应用程序的 docker 映像时,它会要求提供它没有的节点环境。
<Target Name="PreBuild" BeforeTargets="PreBuildEvent">
<Exec Command="npm run build-webpack" />
</Target>
这是我的 docker build 步骤,它无法识别与 dotnet build/publish 关联的 NPM 命令
FROM mcr.microsoft.com/dotnet/core/sdk:2.2 as builder
WORKDIR /app
COPY . .
RUN dotnet publish -c $ENVIRONMENT -o ../out
现在我真正想要的是,我的目标只能在 VS 中运行应用程序时执行。条件可能有效,但它可能是什么?