Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 21850|Ответ: 1

[Источник] Заклинание по значению типа «System.Decimal» не удалось...

[Скопировать ссылку]
Опубликовано 11.03.2019 10:02:24 | | | |
Отброс на тип значения «System.Decimal» не проходит, потому что материализованное значение равно нулю. Общий параметр или запрос к типу результата должен быть типа, который может быть нулевым.
1. При использовании EF для доступа к сумме данных часто встречаются такие исключения

Необработанное исключение типа «System.InvalidOperationException» встречается в EntityFramework.dll



Код исключения 1:



Код исключения 2:

2. Причины:

Причина броса: Данные, отфильтрованные из базы данных по условиям, пусты, а сумма выдает исключение.

Решение 1:После того как фильтрующие поля или строки данных забираются в память на основе критериев, они суммируются


Решение 2:Это возможно, если сумма результатов должна быть нулевая, если строки фильтрующих данных не существуют в зависимости от условия



Решение 3 (рекомендуемо):Используйте DefaultIfEmpty()








Предыдущий:Байесовское мышление: метод обучения на Python для статистического моделирования, PDF, китайская версия
Следующий:Исключение решается инжектором RedisTemplate в SpringBoot
Опубликовано 11.03.2019 11:38:22 |
Я использую третий вариант
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com