Die*_*ego 15 c# entity-framework visual-studio-2010 ado.net-entity-data-model c#-4.0
我只是挑剔但我正在研究Entity Framework如何从EDMX文件生成DLL,我在msdn上看到了这个:
实体数据模型设计器(实体设计器)在设计时将模型和映射信息存储在.edmx文件中.在构建时,实体设计器使用.edmx文件中的信息来创建实体框架在运行时所需的.csdl,.ssdl和.msl文件.
我实际上发现奇怪的是它说"在构建时".csdl,.ssdl和.msl被创建,所以我决定测试.我知道这些文件是基于TablePerTypeStrategy.xaml流生成的,所以我将其删除并尝试构建我的应用程序.它成功了.
当我选择"从模型生成数据库"时,我确实收到一条错误消息,指出TablePerTypeStrategy.xaml文件丢失了.所以我很困惑,显然从这个测试开始,当我尝试生成数据库而不是构建应用程序时正在生成.
我在这里错过了什么?
RBT*_*RBT 15
如果您有兴趣查看*.csdl,*.ssdl,*.msl文件,那么首先构建您的项目一次.现在,在选择项目(包含edmx文件)后,单击解决方案资源管理器中的"显示所有文件"按钮(显示为红色箭头),如下面的快照所示.
目录结构将其表示为obj\x86\Debug\edmxResourcesToEmbed.所有特定于实体框架的xml文件都是在构建期间创建的,因为它们可以在obj文件夹中看到并嵌入为资源.
我在我的项目有两个EDMX文件,即EFCoding.edmx和Model1.edmx,所以你看到每种类型的文件的两个相应集.希望这个观点有助于某人.
注意:所有这些EF元信息文件也可以简单地复制到项目输出目录(代替嵌入它们),只需按照此处的建议调整EF模型设计器的属性即可.
Dav*_*sky 11
这些文件(.csdl,.ssdl,.msl)在构建时生成,并作为资源嵌入到程序集中,供运行时的Entity Framework类使用.从模型生成数据库是生成数据库创建脚本的不同过程.
| 归档时间: |
|
| 查看次数: |
18295 次 |
| 最近记录: |