实体框架属性不能设置为字符串,必须是可空的int

时间:2015-01-30 13:58:05

标签: c# sql entity-framework entity-framework-6

  

' EmpGipNumber'物业在'员工'无法设置为System.String'值。   您必须将此属性设置为类型为' System.Int32'的非空值。

我收到此错误,我的员工模型的EmpGipNumber属性声明如下:

public virtual int? EmpGipNumber {get;set;}

为什么抱怨,它已经是一个可以为空的int。自从我启用迁移以来,我遇到了大量问题。

初始迁移为空,因为我在现有数据库上启用了迁移。第二次迁移是这样的:

public override void Up()
        {
            AlterColumn("dbo.Employee", "EmpGipNumber", c => c.Int());
        }
昨天工作得很好。我去睡觉必须激怒它

1 个答案:

答案 0 :(得分:1)

没有看到更多代码,我想知道这是否是一个数据问题。根据我的经验,它会将任何可以解析的字符串转换为整数...你是否已经验证了你正在转换的数据可以被解析成一个int?