sql >> Database >  >> RDS >> Oracle

Is het mogelijk om door te gaan met het uitvoeren van code vanaf het punt van falen?

Nee, wat je vraagt ​​is niet mogelijk in C#.

In plaats daarvan is de juiste oplossing voor dit probleem het gebruik van betere ontledingsmethoden die in de eerste plaats geen uitzonderingen veroorzaken. Als uw invoerwaarden null kunnen zijn, gebruik dan ontledingsmethoden die null-waarden kunnen accepteren.

Het eerste dat u waarschijnlijk moet doen, is het gebruik van nullable-typen voor uw int/bool-velden, zodat u null-waarden kunt ondersteunen. Vervolgens moet u uw eigen methoden maken voor het ontleden van uw ints/bools. Als uw invoer null is, retourneert u null, zo niet, gebruik dan int.TryParse , bool.TryParse (of as voor elk als uw invoer van het juiste type is, cast gewoon naar object ).

Dan door die methoden te gebruiken, in plaats van Convert , zul je in de eerste plaats geen uitzonderingen maken (wat je hier niet zou moeten doen, zelfs als het zou kunnen werken, omdat uitzonderingen voor uitzonderlijke gevallen zijn, geen verwachte controlestroom).



  1. Oracle DBMS-taak wordt niet uitgevoerd

  2. Verbinding maken met MySQL-database op lokaal netwerk

  3. Een select-statement schrijven met een geneste join

  4. MySQL:wanneer de parameternaam van de opgeslagen procedure hetzelfde is als de naam van de tabelkolom