我将EF与Oracle一起使用,并且我有一个带有可空浮点列的表。 当我映射此表时,该列显示为可空十进制。
在此表中,我在可为空的列中插入了一行,并插入了以下数字:
0.0237786257912282
然后,我使用LINQ调用表:
lList = db.EntTest.ToList();
这样做,Visual Studio会抛出
System.InvalidCastException
如果我更新记录,删除号码,然后我再次呼叫列表,它将起作用。
有什么建议吗?
答案 0 :(得分:0)
如StevePy所说,使用
HasPrecision
在 Context.cs 中的 OnModelCreating 函数上运行即可,例如:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<EntTest>().Property(p => p.NUMBER).HasPrecision(15,30);
}