【问题标题】:Update Data Connection to latest DB version on Visual Studio 17将数据连接更新到 Visual Studio 17 上的最新数据库版本
【发布时间】:2017-07-06 15:55:25
【问题描述】:

我目前正在使用 Visual Studio 开发一个 ASP.NET/C# Web 应用程序,该应用程序依赖于 SQL Server 数据库来获取背后的数据。从我最初通过 VS 创建数据连接的那一刻起,我已经返回并通过 SQL Server Management Studio 更改了数据库中的某些内容(某些列类型、添加的测试行等)。但是,这些更改都没有反映在 VS 应用程序中,这很痛苦,因为我经常因为不匹配而出错。例如,我试图将一个字符串插入一个最初是 int 的列中,并且在尝试通过后面的代码处理查询时出现错误,即使实际的数据库允许我通过 SQL Server 管理器很好地运行查询。

这种不匹配非常糟糕,如果我在 SQL Server 管理器和 Visual Studio 上运行相同的查询 (SELECT * FROM Project),我会得到完全不同的结果:SQL Server Management Studio vs Visual Studio

我已经尝试在服务器资源管理器上刷新我的连接,甚至在 Web.config 上创建了一个新的连接字符串,看看这是否会以某种方式修复它,但似乎没有任何效果。我发现一篇文章解释了 VS 在构建过程中创建了本地版本的数据库,但它提供的解决方案似乎只适用于非 ASP.NET 项目,因为我没有 bin/Debug DB。

有什么建议可以让 Visual Studio 反映我的架构/数据的最新版本?谢谢!

【问题讨论】:

  • 只需仔细检查您的连接字符串以确保所有内容都指向同一个数据库。
  • 是的,相同的数据库服务器和信息。我使用了对象资源管理器,虽然服务器上还有其他数据库,但初始目录也指向正确的数据库

标签: asp.net sql-server visual-studio visual-studio-2017


【解决方案1】:

从您的示例文件中,您正在处理两个不同的数据库。

在 SQL Server Management Studio 和 Visual Studio 中执行以下命令。您可能会看到列出的文件名不同。

exec sp_helpfile

如果是这样,那么您没有在两个环境中连接到同一个服务器/数据库。您可以在 Visual Studio 中单击数据库以在“属性”窗口中查看“连接字符串”。根据您的 web.config 连接字符串检查它。

【讨论】:

  • 不完全确定这是否解决了它,因为我实际上并没有更改我的代码,但我运行了命令并且数据库连接得到了刷新,现在两个数据库都同步了!非常感谢
  • 听起来您的 VS 连接已刷新,现在使用与 SSMS 相同的参数。上面的命令不会改变任何东西,但如果您将来遇到问题,应该有助于排除故障。
猜你喜欢
  • 1970-01-01
  • 2019-02-13
  • 2019-11-01
  • 2018-07-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多