gpt4 book ai didi

c# - Entity Framework - CSDL、SSDL 和 MSL 文件

转载 作者:可可西里 更新时间:2023-11-01 07:53:11 25 4
gpt4 key购买 nike

我只是有点挑剔,但我正在研究 Entity Framework 如何从 EDMX 文件生成 DLL,我在 msdn 上看到了这个:

The Entity Data Model Designer (Entity Designer) stores model and mapping information in an .edmx file at design time. At build time the Entity Designer uses the information in an .edmx file to create the .csdl, .ssdl, and .msl files that are needed by the Entity Framework at runtime.

实际上,我发现它说“在构建时”创建了 .csdl、.ssdl 和 .msl 很奇怪,所以我决定进行测试。我知道这些文件是根据 TablePerTypeStrategy.xaml 流程生成的,所以我删除了它并尝试构建我的应用程序。成功了。

当我选择“从模型生成数据库”时,我确实收到一条错误消息,指出缺少 TablePerTypeStrategy.xaml 文件。所以我很困惑,从这个测试中可以清楚地看出,当我尝试生成数据库而不是构建应用程序时,生成正在生成。

我在这里错过了什么?

最佳答案

如果您有兴趣查看 CSDL、SSDL 和 MSL 文件,请构建包含 EDMX 文件的项目。现在,在解决方案资源管理器中单击您的项目节点后,单击 Show All Files 按钮(在屏幕截图中用红色箭头指向)。

enter image description here

目录结构表示为 obj\x86\Debug\edmxResourcesToEmbed。所有 Entity Framework (EF) 特定的 xml 文件都是在构建期间创建的,因为它们可以在 obj 文件夹中看到并作为资源嵌入。

我的项目中有两个 EDMX 文件,即 EFCoding.edmxModel1.edmx。所以你可以看到每种文件类型的两组,例如有两个 *.csdl 文件。希望这个观点对某人有所帮助。

注意:所有这些 EF 元信息文件也可以通过按照建议调整 EF 模型设计器的属性,将所有这些 EF 元信息文件复制到项目输出目录(而不是嵌入它们)here .

关于c# - Entity Framework - CSDL、SSDL 和 MSL 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10553146/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com