我的解决方案中有一个 Blazor 服务器端项目和一个单独的 API 项目。我在尝试从 API 项目连接到 SQL Server 数据库时遇到问题。 Blazor 项目中的连接工作正常,但在尝试在 API 项目中建立连接时收到以下错误:
这两个项目都是同一解决方案的一部分。 Blazor 项目使用相同的连接字符串成功连接到 SQL Server 数据库。 我使用 System.Data.SqlClient 命名空间进行数据库连接。 API项目独立运行,其他功能按预期工作。
很难明确地说,但是如果主应用程序可以直接连接到外部资源,但是当您将我们的逻辑重构为卫星程序集时却无法连接,那么这通常与您如何定义连接的配置有关。在这种情况下,我将查看连接字符串,它在哪里定义以及它如何加载到您的代码中?
我遵循的调试顺序是这样的:
确认已加载正确的连接字符串在进入 try 块之前
connection.Open()
作为
try
内的第一行,以确保可以连接到数据库
System.Diagnostics.Debug.WriteLine(query);
我将此作为评论中有关如何正确发帖的简短讨论的答案。