LinqConnect save decimal incorrect
Posted: Mon 24 Jun 2013 10:52
When saving decimal fields, the driver round decimals.
Does not allow to save 3.51m, it incorrectly save 4m.
Sample...
CREATE TABLE [test] (
[id] [VARCHAR(36)] NOT NULL,
[data] [NUMERIC(18, 2)] NOT NULL,
CONSTRAINT [] PRIMARY KEY ([id]));
// Clear Table
using (Database db = new Database())
{
foreach(Test test in db.Tests)
{
db.Tests.DeleteOnSubmit(test);
}
db.SubmitChanges();
}
// Create Record
using(Database db = new Database())
{
Test test = new Test() { Id = "1", Data = 3.51m };
db.Tests.InsertOnSubmit(test);
db.SubmitChanges();
}
// Find record
using (Database db = new Database())
{
Test test2 = db.Tests.First();
MessageBox.Show("expected 3.51 save " + test2.Data.ToString());
}
Does not allow to save 3.51m, it incorrectly save 4m.
Sample...
CREATE TABLE [test] (
[id] [VARCHAR(36)] NOT NULL,
[data] [NUMERIC(18, 2)] NOT NULL,
CONSTRAINT [] PRIMARY KEY ([id]));
// Clear Table
using (Database db = new Database())
{
foreach(Test test in db.Tests)
{
db.Tests.DeleteOnSubmit(test);
}
db.SubmitChanges();
}
// Create Record
using(Database db = new Database())
{
Test test = new Test() { Id = "1", Data = 3.51m };
db.Tests.InsertOnSubmit(test);
db.SubmitChanges();
}
// Find record
using (Database db = new Database())
{
Test test2 = db.Tests.First();
MessageBox.Show("expected 3.51 save " + test2.Data.ToString());
}