我有这个课程:
public class PayTerm
{
public int PayTermExternalKey { get; set; }
public int Code { get; set; }
public string Name { get; set; }
}
在数据库中,PayTermExternalKey
是smallint
,因为它与另一个系统表的密钥smallint
有关,在我的程序中,我有一个网格,用于保存该实例的实例。 PayTerm
类……除非正确,否则,但是当我去恢复PayTerm
列表时,我在EntiyFramework中出错
“ PayTerm”上的“ PayTermExternalKey”属性无法设置为 'System.Int16'值。您必须将此属性设置为非空值 类型为“ System.Int32”。
我在使用该属性的所有类中进行了查找,结果发现它总是int ...
更新
我创建的表很糟糕,现在PayTermExternalKey
是正确的类型,现在不再发生错误。
答案 0 :(得分:0)
我不太了解,但我认为您应该将PayTerm类中PayTermExternalKey的类型从int更改为short。因为System.Int16是短型。