Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 21850|Antwoord: 1

[Bron] Uitgesproken naar waardetype "System.Decimaal" mislukt...

[Link kopiëren]
Geplaatst op 11-03-2019 10:02:24 | | | |
De casting naar het waardetype "System.Decimal" faalt omdat de gematerialiseerde waarde null is. De generieke parameter of query van het resultaattype moet van een type zijn dat nul kan zijn.
1. Bij gebruik van EF om databasesommatie te benaderen, komen dergelijke uitzonderingen vaak voor

Een niet-behandelde uitzondering van het type "System.InvalidOperationException" treedt op in EntityFramework.dll



Uitzonderingscode 1:



Uitzonderingscode 2:

2. Redenen:

Reden voor het gooien: De data die volgens de voorwaarden uit de database wordt gefilterd is leeg, waarna de som een uitzondering werpt.

Oplossing 1:Nadat de filtervelden of datalijnen op basis van de criteria in het geheugen zijn opgenomen, worden ze opgeteld


Oplossing 2:Dit kan worden gedaan als de somresultaten als nul moeten worden gespecificeerd wanneer de filtergegevenslijnen niet bestaan op basis van de voorwaarde



Oplossing 3 (aanbevolen):Gebruik DefaultIfEmpty()








Vorig:Bayesiaans denken: Python Learning Method for Statistical Modeling, PDF Chinese versie
Volgend:De uitzondering wordt opgelost door de RedisTemplate-instantie in SpringBoot te injecteren
Geplaatst op 11-03-2019 11:38:22 |
Ik gebruik optie drie
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com