Do not throw generic exceptions

This page is not yet available in Spanish. We are working on its translation.
If you have any questions or feedback about our current translation project, feel free to reach out to us!

Metadata

ID: csharp-best-practices/use-specific-exceptions

Language: C#

Severity: Warning

Category: Best Practices

Description

Exceptions should be specific to the application to help points the exact issue. For these reasons, generic exceptions should not be used and we should instead favor specific exception types.

Non-Compliant Code Examples

class MyClass {
    public static void processString(string s)
    {
        throw new Exception("foo");
        throw new ApplicationException("oh no something got wrong");
    }
}

Compliant Code Examples

class MyClass {
    public static void processString(string s)
    {
        throw new MyCustomException("oh no!");
    }
}
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis