大师救命, 我最近在学习MVC3,使用EFcodefirst 过程中,创建了一个类,命名为Person。有ID和Name两个属性,准备运行后让EFcodefirst 自动创建数据库中的Person表, 但是程序运行后,与类名Person对应的表名变成了People, 程序不报错,能运行,数据也一一对应,就是名称不一样。怎么回事啊。 备注:后面把Person这个名字换成了Ren,EFcodefirst 创建的表名也是Ren,就没有错了,但又换回Person后,EFcodefirst 又把表名变成了People。要疯了。
有高手愿意留邮箱吗:我把源代码发给您。
11 回答
ibeautiful
TA贡献1993条经验 获得超5个赞
根据ScottGu给的博客,这个叫命名约定,因为通常数据库的表命名是复数的,类的命名是单数的,因此有这一个“默认命名约定”,因为CodeFirst没有edmx文件,所以也没得设
办法就是合适代码来做Mapping
请看这张图
看OnModelCreating里的话,可以映射到不同的表,当然我没用过,不知道是不是这样可以导致创建数据库时也正确,你可以试一下
qq_笑_17
TA贡献1818条经验 获得超7个赞
Pluralize or singularize...”这个选项在哪里啊?
在EFcodefisrt 里面的哪里选啊,我直接建的类(.cs)文件,用类创建数据库,不是根据数据库创建类时有那个单复数选项,
在EFcodefisrt 里面的哪里选啊,我直接建的类(.cs)文件,用类创建数据库,不是根据数据库创建类时有那个单复数选项,
- 11 回答
- 0 关注
- 453 浏览
添加回答
举报
0/150
提交
取消