После конвертации версии с .NET Core 3.1 на 6.0 я разобрался, что все столбцы типа decimal(10, 5) автоматически округляют десятичную часть числа и сохранил его в базе данных с круглым форматом. Что в предыдущей версии .NET Core работало корректно.
Например, у меня есть столбец типа asset = 85.456, в новой версии он хранится в базе данных со значением 85.46.
обновление версии пакетов: EFCore версии 2.13.4 => 6.13.18 EntityFrameworkCore.SqlServer версии 2.2.6 => 6.0 и я использую Microsoft SQL Server.
Как я могу предотвратить это?
Ты прав. Я завершаю свой вопрос.
Добавлено sql-server и удалено asp.net-core-3.1 (это уже не то, потому что вы конвертировали)





Можете ли вы быть уверены в своем построителе моделей в классе контекста:
modelBuilder.Entity<TableName>(entity =>
{
entity.Property(e => e.FieldName).HasColumnType("decimal(10, 5)");
});
Если это не так, возможно, этот тип значения поля отсутствует decimal(10,5) в вашей базе данных.
Да, это работает. На самом деле, в .Net Core версии 3.1 я не использовал modelBuilder, и он работал правильно. Итак, в .Net 6.0 я должен определить все свойства с десятичным типом в modelBuilder?
Какая база данных? Вы упоминаете только ASP.NET Core, то есть веб-фреймворк, но ничего не говорите об используемой базе данных и о том, как вы с ней взаимодействуете. ...