RequiresAttribute Class

Validates that an argument can only be used together with other arguments.

Definition

Namespace: Ookii.CommandLine.Validation
Assembly: Ookii.CommandLine (in Ookii.CommandLine.dll) Version: 4.0.0+bb7ed9a8fdfd1cb21824750a8cf508863ad15086
C#
public class RequiresAttribute : DependencyValidationAttribute
Inheritance
Object    Attribute    ArgumentValidationAttribute    ArgumentValidationWithHelpAttribute    DependencyValidationAttribute    RequiresAttribute

Remarks

This attribute can be used to indicate that an argument can only be used in combination with one or more other arguments. If one or more of the dependencies does not have a value, validation will fail.

This validator will not be checked until all arguments have been parsed.

If validation fails, a CommandLineArgumentException is thrown with the error category set to CommandLineArgumentErrorCategoryDependencyFailed.

The names of the arguments that are dependencies are not validated when the attribute is created. If one of the specified arguments does not exist, an exception is thrown during validation.

Constructors

RequiresAttribute(String) Initializes a new instance of the RequiresAttribute class.
RequiresAttribute(String) Initializes a new instance of the RequiresAttribute class with multiple dependencies.

Properties

Arguments Gets the names of the arguments that the validator checks against.
(Inherited from DependencyValidationAttribute)
ErrorCategory Gets the error category used for the CommandLineArgumentException when validation fails.
(Inherited from DependencyValidationAttribute)
IncludeInUsageHelp Gets or sets a value that indicates whether this validator's help should be included in the argument's description.
(Inherited from ArgumentValidationWithHelpAttribute)
Mode Gets a value that indicates when validation will run.
(Inherited from DependencyValidationAttribute)
TypeIdWhen implemented in a derived class, gets a unique identifier for this Attribute.
(Inherited from Attribute)

Methods

EqualsReturns a value that indicates whether this instance is equal to a specified object.
(Inherited from Attribute)
FinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
GetArguments Resolves the argument names in the Arguments property to their actual CommandLineArgument instances.
(Inherited from DependencyValidationAttribute)
GetErrorMessage Gets the error message to display if validation failed.
(Overrides ArgumentValidationAttributeGetErrorMessage(CommandLineArgument, Object))
GetHashCodeReturns the hash code for this instance.
(Inherited from Attribute)
GetTypeGets the Type of the current instance.
(Inherited from Object)
GetUsageHelp Gets the usage help message for this validator.
(Inherited from ArgumentValidationWithHelpAttribute)
GetUsageHelpCore Gets the usage help message for this validator.
(Overrides ArgumentValidationWithHelpAttributeGetUsageHelpCore(CommandLineArgument))
IsDefaultAttributeWhen overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.
(Inherited from Attribute)
IsSpanValid When overridden in a derived class, determines if the argument is valid.
(Inherited from ArgumentValidationAttribute)
IsValid Determines if the dependencies are met.
(Inherited from DependencyValidationAttribute)
MatchWhen overridden in a derived class, returns a value that indicates whether this instance equals a specified object.
(Inherited from Attribute)
MemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
ToStringReturns a string that represents the current object.
(Inherited from Object)
Validate Validates the argument value, and throws an exception if validation failed.
(Inherited from ArgumentValidationAttribute)
ValidateSpan Validates the argument value, and throws an exception if validation failed.
(Inherited from ArgumentValidationAttribute)

Thread Safety

Static members of this type are safe for multi-threaded operations. Instance members of this type are safe for multi-threaded operations.

See Also