[Expand]General Information
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Report and Dashboard Server
[Expand]eXpressApp Framework
[Expand]eXpress Persistent Objects
  System Requirements
  Improve Performance
 [Expand]Features by Language
 [Expand]Getting Started
 [Expand]How To
 [Collapse]Coding Assistance
  [Expand]Code Templates
  [Expand]Auto Completion
  [Expand]Clipboard Tools
  [Expand]Selection Tools
  [Collapse]Code Providers
   [Collapse]Contract Providers
     Assert Contract
     Assume Contract
     Exit Method Contract
     Invariant Contract
     Requires Contract
     Throw Exceptions Contract
   [Expand]Declaration Providers
   [Expand]Implementation Providers
    Add Copyright Header
    Add Else Statement
    Add Getter/Setter
    Add Missing Constructors
    Add Parameter
    Add to Interface
    Add XML Comments
    Convert to Function
    Convert to Procedure
    Convert to Property With Change Notification/Introduce Change Notification
    Create Event Trigger
    Encapsulate Property
    Import Type/All Types (XAML)
    Introduce Format Item
    Introduce Setter Guard Clause
    Invert Selection
    Promote to Parameter
    XPO Fields
  [Expand]Declare Menu
  [Expand]Typing Helpers
 [Expand]Navigation and Search Tools
 [Expand]Static Code Analysis
 [Expand]Visualization Tools
 [Expand]Code Style Assistance
  Building Assistance
  Debugging Assistance
 [Expand]Refactoring Assistance
 [Expand]Unit Testing Assistance
 [Expand]Decompiling Tools
 [Expand]Configuration Options
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)

Throw Exceptions Contract

Expanded Purpose

This Code Provider adds the guard precondition to method parameter(s) or a variable assignment. The precondition ensures the passed or assigned values are not empty and throws the ArgumentException (or ArgumentNullException) in case they are.

Expanded Availability

Available in the following cases.

  • When the caret is at the beginning of a method body. In this case, the contract will test all method parameters and strings.
  • When the caret is on a method's parameter name. In this case, the contract will test only the selected parameter.
  • When the caret is on a variable assignment.

This Code Provider may be unavailable for variables of a non-nullable type, for instance, Integer.

Expanded Usage

  1. Place the caret at the beginning of a method body.


    The blinking cursor shows the caret's position at which the Code Provider is available.

  2. Use the Ctrl + . or Ctrl + ~ shortcut to invoke the Code Actions Menu.
  3. Select Add Contract | Throw Exceptions Contract from the menu.

After execution, the Code Provider adds the guard conditional against all the method parameters.

Expanded See Also

Is this topic helpful?​​​​​​​