Visual Studio 为解决方案生成代码Map-无法连接到指定的数据库

vuv7lop3  于 2022-11-17  发布在  其他
关注(0)|答案(1)|浏览(208)

我尝试使用Visual Studio 2017 Enterprise生成代码Map,但收到以下错误:

注意数据源:数据源=(LocalDB)\MSSQLLocalDB。当我在解决方案中搜索MSSQLLocalDB时,没有任何结果。我的应用程序不使用SQL Server 2016(我认为连接字符串就是用于此目的的)。它使用2012。我的所有连接字符串都使用(localdb)\v11.0。
我尝试过的修复/备注:

  • 我尝试查看XML文件,但“打开XML编辑器”只是在Visual Studio中关闭.dgml文件。
  • 更改Visual Studio的数据连接(工具-〉选项-〉数据库工具-〉数据连接)不起作用:

  • 正在安装SQL Server组件。在Visual Studio安装程序中可以找到的大多数SQL Server组件都已安装:

  • Visual Studio是最新的:

  • 我发现了this问题。不仅VS 2012有这个问题,web. config也有解决方案。我的应用程序是桌面应用程序,所以没有web. config。但无论如何,没有一个项目的app.config包含对(LocalDB)\MSSQLLocalDB的引用。

  • 考虑到这可能与最新版本的SSDT(15.8.1)不再支持SQL Server 2012有关,我检查了版本,它是15.1.6:x1c4d 1x指令集

Visual Studio运行在64位Windows 7旗舰版SP1上。

编辑

我使用的是带有本地数据库的SQL Server Express。
该问题似乎与连接字符串有关。按照创建SSDT项目(here)和导入数据库的基本说明(请注意,在步骤6中,我的目标是SQL Server 2012),该问题仍然存在-没有连接字符串,也没有实际代码。
我还验证了SQL Server 2012是唯一连接的服务器:

为SEO目的添加的错误消息(在搜索引擎上找不到该问题)

The XML content in this document cannot be viewed as a graph because it contains unexpected errors. Open the XML Editor to fix these errors and then try re-opening the graph. The actual error found is described below. Unable to connect to the specified database. An exception occurred attempting to connect to a database using the following connection string : Data Source=(LocalDB)\MSSQLLocalDB : Attach DbFilename=;Initial Catalog=master Integrated Security=True;Enlist=False;Asynchronous Processing=True; MultipleActive ResultSets=True Connect Timeout=30. Check that the specified SQL Server instance exists and the service is running. Call Stack : at Microsoft.Repository.SqlInteraction. OpenAndConfigureConnection (SqlConnection connection) Microsoft.Repository.SqlInteraction.<>c__DisplayClass7_0.<UsingConnection>b_0 () at at Microsoft.Repository.SqlInteraction.ExecuteRepositoryAction (Action action) at Microsoft.Repository.SqlInteraction. UsingConnection (SqlConnection sqlConnection, Action`1 act) at Microsoft.Repository.SqlInteraction. UsingMasterConnection (String connectionString, Action`1 act) at Microsoft. Repository. Utilities.GetDbStateAndFileNames (SqlConnectionStringBuilder builder) at Microsoft.Repository. Utilities.GetDatabase State (String connectionString) at Microsoft.VisualStudio. Architecture Tools. Progressive Reveal. PRUtilities. CanQuery (ActionContext context, IProgressionCacheSettings settings) at Microsoft.VisualStudio. ArchitectureTools. Progressive Reveal.GetRepositoryTimestamps Command.Execute (ActionContext context, IGraphStatus status Reporter, IProgressionCacheSettings settings) at Microsoft.VisualStudio. Architecture Tools. ProgressiveReveal. Progressive RevealProvider. GetRepositoryTimestampsHandler (ActionContext context) at Microsoft.VisualStudio. Progression. ActionManager. CallNormalActions (Action action, ActionContext actionContext, Boolean propagateCancellation)
lsmepo6l

lsmepo6l1#

我在VS 2019中遇到了同样的问题。我的解决方案是删除并重新创建数据库MSSQLLocalDB。原因可能是我的帐户没有打开数据库的权限,可能是因为我的管理员用他的帐户安装了Visual Studio。
以下是重新创建DB的步骤:
1.找到SQL Server LocalDB utility的位置。对我来说,这是"C:\Program Files\Microsoft SQL Server\130\Tools\Binn\SqlLocalDB.exe"
1.在该文件夹中打开管理shell。

  1. SqlLocalDB.exe i显示所有数据库示例。
    1.删除DB:SqlLocalDB.exe d MSSQLLocalDB
    1.重新创建数据库:SqlLocalDB.exe c MSSQLLocalDB
    现在我可以使用 *VS代码Map *,并且可以在VS中的 *SQL Server对象资源管理器 * 中打开数据库。

相关问题