Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 21850|Risposta: 1

[Fonte] Cast al tipo "System.Decimal" fallito...

[Copiato link]
Pubblicato su 11/03/2019 10:02:24 | | | |
Il cast al tipo di valore "System.Decimal" fallisce perché il valore materializzato è nullo. Il parametro generico o la query del tipo di risultato deve essere di un tipo che può essere nullo.
1. Quando si utilizza EF per accedere alla somma del database, tali eccezioni si incontrano spesso

Un'eccezione non gestita di tipo "System.InvalidOperationException" si verifica in EntityFramework.dll



Codice eccezione 1:



Codice eccezione 2:

2. Motivi:

Motivo del lancio: I dati filtrati dal database secondo le condizioni sono vuoti, e poi la somma crea un'eccezione.

Soluzione 1:Dopo che i campi di filtro o le righe di dati vengono portati in memoria in base ai criteri, vengono sommati


Soluzione 2:Questo può essere fatto se la somma dei risultati deve essere specificata come nulla quando le righe di dati del filtro non esistono in base alla condizione



Soluzione 3 (consigliata):Usa DefaultIfEmpty()








Precedente:Pensiero bayesiano: metodo di apprendimento Python per la modellazione statistica, versione PDF cinese
Prossimo:L'eccezione viene risolta iniettando l'istanza RedisTemplate in SpringBoot
Pubblicato su 11/03/2019 11:38:22 |
Sto usando l'opzione tre
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com