PostSharpAPI ReferencePost­Sharp.​Patterns.​ContractsStrict­Range­Attribute
Open sandboxFocus

StrictRangeAttribute Class

Custom attribute that, when added to a field, property or parameter, throws an ArgumentOutOfRangeException if the target is assigned a value that is not strictly within the given range.

Namespace: PostSharp.Patterns.Contracts
Assembly: PostSharp.Patterns.Common.dll
Syntax
public class StrictRangeAttribute : RangeAttribute, ILocationLevelAspect, IValidableAnnotation, IAspect
Remarks

Null values are accepted and do not throw an exception.

Floating-point values are tested to be strictly within the given bounds with a tolerance value. The tolerance value is equal to the distance of the value closest to the bounds according to the precision of the respective floating-point numerical data type.

Error message is identified by StrictRangeErrorMessage.

Error message can use additional arguments {4} and {5} to refer to the bounds.

Constructors

Name Description
StrictRangeAttribute(Double, Double)

Initializes a new StrictRangeAttribute with given floating-point bounds.

StrictRangeAttribute(Int64, Int64)

Initializes a new StrictRangeAttribute with given integer bounds.

StrictRangeAttribute(UInt64, UInt64)

Initializes a new StrictRangeAttribute with given System.UInt64 bounds.

Methods

Name Description
CreateException(Object, String, LocationKind, LocationValidationContext)
GetErrorMessage()

Gets unformatted error message as defined by the instance.