在WSL中运行测试.NET Core Web应用的构建部署方式咨询
解答
是否必须在WSL中单独安装Visual Studio完成应用构建
不需要,WSL仅作为Linux运行测试环境使用,无需在子系统内安装完整的Visual Studio开发工具链。Windows端Visual Studio 2019及更高版本原生支持.NET Core的跨平台构建能力,完全可以在Windows环境完成全部开发构建工作。
是否可通过Windows端Visual Studio生成适配Linux的发布文件,部署到WSL运行
完全可以,这也是Windows环境开发Linux部署.NET应用的主流本地测试方案,操作逻辑如下:
- 发布时在Visual Studio的发布配置页,目标运行时选择
linux-x64(若使用Arm架构设备可选择对应linux-arm64参数),部署模式可选框架依赖或独立部署:- 选择框架依赖的话,仅需要提前在WSL环境安装对应版本的.NET Runtime即可,不需要安装SDK
- 选择独立部署的话,发布包会自带.NET运行时,WSL环境无需额外安装.NET相关组件
- 生成的发布包可以直接通过WSL的跨文件系统访问:Windows磁盘默认挂载在WSL的
/mnt/目录下,直接在WSL终端进入发布包目录,执行dotnet 你的应用入口.dll即可启动应用,运行效果和Azure Linux App Service生产环境基本一致 - 日常调试时可以直接在Visual Studio的启动目标下拉菜单选择
WSL,VS会自动完成跨平台构建、部署到WSL、附加调试的全流程,无需手动拷贝发布包,效率更高
补充注意:如果你的应用依赖了平台专属的原生库,需要确认引入的NuGet包包含Linux平台的原生实现,否则运行时会出现兼容性报错。这类特殊场景也可以仅在WSL中安装轻量的.NET SDK,通过
dotnet publish命令完成构建,依然不需要安装完整的Visual Studio。
内容的提问来源于stack exchange,提问作者Jerry
相关产品推荐
相关产品推荐

