使用EF 5和MVC 4将十进制值插入SQL Server

Naz*_*mii 2 sql-server asp.net-mvc entity-framework decimal

我有一个插入decimal(10, 7)SQL Server的问题

当我试图将ASP.NET MVC视图中的数字添加51.0492263到数据库中时

在调试器中我有数字= 51.0492263

但是当我去数据库时,我有 51.0400000

为什么我得到这个结果?

有人帮忙取悦我.

小智 5

使用Code First时,Entity Framework的默认比例是2.可以将Code First与现有数据库一起使用,但是由您决定数据库结构是否与EF认为应该匹配.

不幸的是,没有用于指定比例的现成属性.你必须使用DbModelBuilder.在你的背景下,你可以把

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
  modelBuilder.Entity<Device>().Property(d => d.Latitude).HasPrecision(10, 7);
}
Run Code Online (Sandbox Code Playgroud)