Entity Framework Core - Web 部署缺少 SQL Server 管理对象依赖项

问题描述 投票:0回答:1

当前我正在尝试执行 Web 部署 ASP.NET CORE 项目,该项目使用 EF Core 到远程 IIS 服务器,我选中此标志以在发布时执行 EF 迁移:

EF 迁移

但不幸的是我缺少依赖项:

C:\Program Files\dotnet\sdk\8.0.304\Sdks\Microsoft.NET.Sdk.Publish\targets\PublishTargets\Microsoft.NET.Sdk.Publish.MSDeploy.targets(140,5): Error : Web deployment task failed. (The SQL provider cannot run because of a missing dependency. Please make sure that Microsoft SQL Server Management Objects (Version 10 or higher) is installed.  Learn more at: https://go.microsoft.com/fwlink/?LinkId=221672#ERROR_SMO_NEEDED_FOR_SQL_PROVIDER.)
Publish failed to deploy.

我尝试在 VS 2022 上安装以下 NUGET 包,但没有成功:

NUGET

我认为当我使用此标志时应该自动创建数据库。

asp.net-core iis entity-framework-core webdeploy
1个回答
0
投票

对于像

ERROR_SMO_NEEDED_FOR_SQL_PROVIDER
这样的错误,通常的解决方案是使用Web Platform Installer安装最新版本的SMO。根据这个官方文档,确保你的安装过程没有错误。

如果按照正确的安装步骤后仍无法正常使用,则可能是IIS权限问题。尝试以管理员身份启动 IIS,然后配置 Web 部署。

如果上述步骤未能解决问题,请重新安装完整组件的 Microsoft SQL Server。但需要更多时间。

© www.soinside.com 2019 - 2024. All rights reserved.