如何使用 localdb 在 Code First 中查看数据库图

Posted

技术标签:

【中文标题】如何使用 localdb 在 Code First 中查看数据库图【英文标题】:How to view database diagram in a Code First using localdb 【发布时间】:2012-11-12 18:44:16 【问题描述】:

我有一个Code First 项目,其中Entity Framework 5.0.0 使用localdbVisual Studio 2012 Ultimate 中创建。 虽然我可以在Class Diagram 中看到我的类关系,但是如何看到EF 自动生成的数据库的可视化图?

【问题讨论】:

这篇博文 [stratospher.es/blog/post/… 展示了如何使用 SQL Management Studio 连接到 LocalDB。 VS2012 可以重复使用相同的方法。 谢谢,知道了(检查你的链接)。我怀疑 EF 5 中是否有内置选项,而不是每次想要查看数据关系时都对我的项目进行逆向工程。 您可以使用 EdmxWriter.WriteEdmx(或使用 PowerTools)转储 edmx,并使用 VS2012 打开此文件,应该打开 EFDesigner,您应该会在设计器中看到模型。请注意,它将是概念模型,而不是存储模型(数据库)。 希望能为您提供数据库迁移的有用信息:1.coding.abel.nu/2012/03/ef-migrations-command-reference/… 2.thedatafarm.com/blog/data-access/… 我一直在寻找与您相同的东西,然后我意识到 SSMS 具有用于显示现有关系的内置功能。在 db 文件夹中,右键单击 Database Diagrams,Add New,然后选择除迁移文件夹之外的所有表。然后它将显示数据库中所有表之间的关系;砰! 【参考方案1】:

安装 Entity Framework Power Tools Beta 4,重新启动 Visual Studio,右键单击解决方案视图中的上下文,您将在上下文菜单中看到一个新的“实体框架”选项。选择“查看实体数据模型”以在 Visual Studio 中查看漂亮的可视化数据库图。瞧!

Entity Framework 6 电动工具:Link

【讨论】:

是的,在某些情况下非常方便。您还可以将现有数据库逆向工程为一堆类,如果将 EF 用于现有数据库情况,这可以节省大量时间。 现在好。它应该支持通过模型进行更改(目前它是只读的) 我确实用过这个,它很方便。但是,这并不是严格意义上的 SQL 数据库图,而是它的 EF 模型。一分钱掉了,我发现您可以使用 SQL Server Management Studio 2012 使用常用的数据库图表工具来执行此操作。请参阅下面的答案。 这不适用于 VS 2015。这里是 Julie Lerman 关于如何使其工作的:thedatafarm.com/data-access/… 或者,如果您赶时间,只需从 here 下载 Julie 的 .visx。【参考方案2】:

您可以将 Microsoft SQL Server Management Studio 2012localdb 一起使用,它以您可能习惯于使用其他 SQL Server 数据库的方式支持数据库图表。

    打开 Management Studio(应该已经与 Visual Studio 一起安装) 使用 Windows 身份验证连接到 (localdb)\v11.0 查找相关数据库 扩展数据库图,并安装图支持对象(如果您尚未安装) 添加您需要的表格就完成了!

来源:这篇较旧但仍然相关的文章:http://visualstudiomagazine.com/blogs/data-driver/2012/05/visual-studio-11-beta-easier-development-localdb.aspx

【讨论】:

对于那些后来的人,例如使用带有 LocalDB 的 Code First 应用程序的默认模板,只需使用连接字符串的服务器实例部分将 SSMS 连接到 - 在我的情况下,它是 (LocalDb)\MSSQLLocalDB【参考方案3】:

我查看了Entity Framework Power Tools Beta 4,它不再受支持。 Intead,您可以使用新的Entity Framework 6 Power Tools Community Edition。

应该是一样的。

【讨论】:

以上是关于如何使用 localdb 在 Code First 中查看数据库图的主要内容,如果未能解决你的问题,请参考以下文章

EF Code-First“在数据库'主'中拒绝创建数据库权限。”错误

版本 11 的 localdb 的连接字符串是啥

如何使用 EF Core Code-First 创建具有子类别的类别表? [复制]

如何使用 EF Code-First 插入/更新可更新视图

“Code First Migrations ”工具

如何使用 Entity Framework 4 Code-First 定义数据库视图?