Marks the end of the contract section when a method's contracts contain only preconditions in the if-then-throw form.
Assemblies: mscorlib (in mscorlib.dll)
System.Diagnostics.Contracts (in System.Diagnostics.Contracts.dll)
Most code already contains some parameter validation in the form of if-then-throw code. The contract tools recognize if-then-throw statements as preconditions when the statements appear first inside a method, and the entire set of such statements is followed by an explicit Contract method call, such as a Requires, Ensures, EnsuresOnThrow, or .
When if-then-throw statements appear in this form, the contract tools recognize them as legacy-require statements. The form is used only if no other contracts follow the if-then-throw sequences, but they should still be tagged as legacy-requires.