简体   繁体   English

Devart DotConnect 在针对 Oracle 使用实体框架 6 时得到了意外的长小数点

[英]Devart DotConnect got unexpected long decimal point for me while using entity framework 6 against Oracle

I have a record which contain a number in certain field: 25.99 .我有一条记录,其中包含某个字段中的数字: 25.99 Whenever I select this record using Devart DotConnect from my C# code it returns me 25.990000000000002 .每当我 select 使用我的 C# 代码中的 Devart DotConnect 记录此记录时,它都会返回我25.990000000000002 Therefore, my update statement prompt me such exception: Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. Refresh ObjectStateManager entries.因此,我的更新语句提示我这样的异常: Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. Refresh ObjectStateManager entries. Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. Refresh ObjectStateManager entries.

My code snippet is stated as follow:我的代码片段说明如下:

var busRoutes = (
    from route in ctx.RMBUSROUTEs
    select route
).ToArray();

foreach (var busRoute in busRoutes)
{
    busRoute.LASTUPDDATE = DateTime.Now;
}

ctx.SaveChanges();

There are ~ only 100 records inside this table.该表内只有约 100 条记录。 Most of the records contains decimal number in that field while only a specific certain record always retrieve 25.99 as 25.990000000000002 .大多数记录在该字段中包含十进制数字,而只有特定的特定记录始终将25.99检索为25.990000000000002 I am sure that the record value stored in DB is 25.99 .我确信存储在 DB 中的记录值是25.99 How come?怎么来的? Thanks in advance.提前致谢。

Try to change type of LASTUPDDATE from DateTime to string .尝试将LASTUPDDATE的类型从DateTime更改为string I dont know why, but it worked for me.我不知道为什么,但它对我有用。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 使用 Entity Framework Code First 连接到带有 devart dotconnect 的旧版 Oracle 数据库 - Using Entity Framework Code First to connect to Legacy Oracle Database with devart dotconnect 使用devart dotConnect调用Oracle存储过程 - Call Oracle stored procedures using devart dotConnect 实体框架、devArt 和 Oracle VarChar 参数 - Entity Framework, devArt, and Oracle VarChar params DevArt dotConnect for Oracle在EF 4.0字符串上具有奇怪的行为 - DevArt dotConnect for Oracle with strange behavior on strings with EF 4.0 dotConnect或“ sqlite.phxsoftware.com”,用于将实体框架与SQLite一起使用 - dotConnect or “sqlite.phxsoftware.com” for using Entity Framework with SQLite 使用Benchmark.NET + DevArt dotConnect for PostgreSQL的许可错误 - License error using Benchmark.NET + DevArt dotConnect for PostgreSQL 使用 MySQL 时,为什么 Entity Framework 4 试图将长整数转换为小数? - When using MySQL, why is Entity Framework 4 trying to convert a long to a decimal? 如何首先为SQLite代码配置Devart dotConnect? - How Configure Devart dotConnect for SQLite Code First? Devart dotconnect-有没有办法强制提交顺序? - Devart dotconnect - Is there a way to force the commit order? 无法查询 sqlite 的 devart dotconnect 中的数据 - cannot query for data in devart dotconnect for sqlite
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM