码迷,mamicode.com
首页 > 其他好文 > 详细

EF迁移时报错“未定义键。请为该 EntityType 定义键。

时间:2019-10-19 09:40:35      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:int   key   string   规则   man   aries   迁移   detail   component   

模型生成过程中检测到一个或多个验证错误:

iXS.Models.OrderDetails: : EntityType“OrderDetails”未定义键。请为该 EntityType 定义键。
iXS.Models.OrderSummary: : EntityType“OrderSummary”未定义键。请为该 EntityType 定义键。
OrderDetailses: EntityType: EntitySet“OrderDetailses”基于未定义任何键的类型“OrderDetails”。
OrderSummaries: EntityType: EntitySet“OrderSummaries”基于未定义任何键的类型“OrderSummary”。

当运行程序时,报了这个错误。检查了一番,发现错误是没有定义主键。

Code First默认约定将命名为Id或“类名+Id”的属性视为表的键。
所以,当你设置的主键是自己没有按默认规则命名的话,需要引入。

然后就可以设置主键了。直接在属性前加上[Key]

 1 using System;
 2 using System.ComponentModel.DataAnnotations;
 3 
 4 namespace iXS.Models.BasicDataManage
 5 {
 6     /// <summary>
 7     /// ProductInfo Entity Model
 8     /// </summary>
 9     public class ProductInfo
10     {
11             
12         /// <summary>
13         /// 主键
14         /// </summary>
15         [Key]    
16         public  int  F_Id { get; set; }
17         
18         /// <summary>
19         /// 产品名称
20         /// </summary>
21             public  String  ProductName { get; set; }

 

EF迁移时报错“未定义键。请为该 EntityType 定义键。

标签:int   key   string   规则   man   aries   迁移   detail   component   

原文地址:https://www.cnblogs.com/IIXS/p/11702764.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!