2017-01-16 93 views
0

我有一个db.edmx包含数据库中的所有值。 现在开始我的ID变量设置为INT,但自从我开始使用身份和想要我的表链接到用户的人,我不得不将数据类型更改为nvarchar的(128) 我这样做,更新从数据库中我的表,并改变了我的所有类的字符串,如:实体框架中的MVC更新表映射,错误2019

public partial class average 
    { 
     public string id { get; set; } 
     public string studentId { get; set; } 
     public string classId { get; set; } 
     public int value { get; set; } 
     public System.DateTime date { get; set; } 

     public virtual @class @class { get; set; } 
    } 

但由于某些原因表映射一直被设置为INT32像有:

enter image description here

在我得到的得到一个:

错误2019:会员映射指定无效。类型 'DbModel.average'中的成员'id'的 'Edm.Int32 [Nullable = False,DefaultValue =]'与 不兼容'SqlServer.nvarchar [Nullable = False,DefaultValue =,MaxLength = 128, Unicode = True,FixedLength = False,StoreGeneratedPattern = Identity]成员'id'的 类型为 'DbModel.Store.averages'。 gimBook C:\用户\艾伦\文档\ Visual 工作室2015年\项目\ gimBook \ gimBook \型号\ Db.edmx 432

的另一个问题是,每当我跑Update Model from Database.cs文件自动更改所有回到int

有什么办法可以正确地更新映射,所以这些值将正常工作?

回答

0

修复:删除db.edmx文件,并重新调整它似乎解决了问题