mysql - 没有为具有复合键的表创建实体类型

标签 mysql entity-framework-4

我正在使用 VS 2010、Entity Framework 4.3 和 MySql.Data.Entity v6.3.5 来处理带有几十个表的 MySQL 数据库。我使用 ADO.NET DbContext 生成器。

除了两个表没有为它们创建实体外,一切都运行良好。两者具有相似的结构,因为它们具有由其他表的外键组成的组合键。因此,一个是 region_flavor 表,它映射分配给特定销售区域的(冰淇淋)口味。看起来是这样

region_flavor
-------------
RegionId INT(10) PK NN
Flavor VARCHAR(64) PK NN

RegionId 是 regions 表的外键,Flavor 是 ice_cream 表的外键。

还有另一张表,情况基本相同。

当我执行“从数据库更新”时,我看到在模型浏览器中,region_flavor 表列在我的IceCreamModel.Store\Tables/Views 文件夹。但是在我的 IceCreamModel\Entity Types 文件夹下没有实体类型。

当我从数据库进行更新时,我没有收到任何 .edmx 错误。

也许我在这里遗漏了什么。想法?

如果有帮助,我可以发布更多信息。

最佳答案

这是正常行为。这是用于对数据库中的多对多关系建模的联结表。如果它不包含任何额外的列,EF 不需要将其映射到实体,因为多对多关系直接建模并由 EF 在内部转换为表行。

关于mysql - 没有为具有复合键的表创建实体类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9380987/

相关文章:

php - SQL:将 EXISTS() 与其他命令一起使用

mysql - mysql 8.0 上的 "group by desc"语法错误在 5.7 上没问题

mysql - 创建查询 SELECT,然后从找到的结果中插入

entity-framework - 使用 Entity Framework 将两个相关表连接成一个实体

entity-framework - EF Code First 在保存更改时处理数据库异常

c# - Linq OrderBy Count In 链表

mysql - Laravel5 : Eloquent and JOIN

php - 试图在 html 表中显示 SQL 数据

c# - LINQ to SQL 查询在结果中有错误的值

c# - Entity Framework 4