2011-04-25 67 views
6

我只是读Asp.net MVC3教程(模型(数据))创建实体图

在此页面tutorial 4 of 10的ASP.NET网站上,它表明一个实体图表从创建代码第一类。如何生成它们?

+0

[实体框架代码优先 - 有没有办法从POCO类创建模型图。](http://stackoverflow.com/questions/4925684/entity-framework-code-first-is -o-way-to-create-a-model-diagram-from-poco) – 2011-04-25 20:09:15

+1

@ladislav:是的,但是这个答案没有解决我的问题,它只是一个线路答案,我无法弄清楚,怎么办那 – 2011-04-25 20:13:27

+3

有一个工具可以从你的Code-First类和关系中完全由EF生成的实体数据模型创建一个图 - 请参阅我的回答:http://stackoverflow.com/a/12223054/11545。反转数据库*可能会工作,但不一定与任何数据库一起工作;另外,您将获得属性的数据库列名称,这些名称不一定与模型的属性名称相同。 – 2012-09-20 18:43:52

回答

3

假设您的模式是从Code First类创建的,您可以将数据库反转为edmx以可视化模型。由此产生的任何类显然不会与您的Code First类相关。

+1

是的,我做到了,但我不认为这是真正的做法。 – 2011-04-25 20:14:46

+0

@Praveen:没有正确的方法来做到这一点。 EDMX不能从代码优先的模型创建(除非你编写的工具能够做到这一点)。 – 2011-04-25 20:16:50

+0

这就是为本教程创建图的方式(在Code First创建的数据库上使用数据库优先设计器)。目前还没有一种方法可以直接为Code First编写的代码创建图表。 – tdykstra 2011-04-25 21:34:53

5

这可以通过使用类图很容易地完成。添加新项目>类图。然后将第一个类的代码拖放到解决方案资源管理器的图中。

+0

要小心,一些操作,例如。删除代码将对您的类有实际影响 – anIBMer 2014-05-12 12:14:24

0

创建项目的副本。打开副本并添加一个新项目/ ADO.NET实体数据模型。编辑布局图并打印到.pdf文件。删除项目的副本。

无论何时您进行更改,您都必须重新创建图表并编辑布局,但通常我可以在大约15分钟内完成整个过程。

4

类图是可以的,但它不会自动显示类之间的关系。我使用的最清晰的方式是Entity Framework Power Tools。他们的工具的描述:

当在C#项目上右击,支持以下上下文菜单功能:1)逆向工程代码第一次 - 生成POCO类,派生的DbContext和代码首先映射现有数据库。

+3

如果您只是想要一个简单的只读视图,请右键单击继承自DbContext的类并选择**实体框架»查看实体日期模型(只读)** – Pakman 2015-07-08 20:55:51

+0

@帕克曼你的评论应该是被接受的答案 – 2015-10-23 07:12:40