| SA1600 | Validates that an element contains a properly formatted documentation header. |
| SA1601 | Validates that a partial class, struct, etc. contains a valid documentation header which contains either a summary tag or a content tag. |
| SA1602 | Validates that an item within an enumeration contains a properly formatted documentation header. |
| SA1603 | Indicates that a documentation header is composed of invalid Xml and cannot be parsed. |
| SA1604 | Validates that a documentation header contains a properly formatted summary tag. |
| SA1605 | Validates that a partial class, struct, etc. contains a documentation header with a properly formatted summary tag or content tag. |
| SA1606 | Validates that an element's summary tag contains a filled-in description. |
| SA1607 | Validates that a partial class, struct, etc. contains a documentation header with a filled-in summary description. |
| SA1608 | Validates that the summary tag in an element's documentation header is not the default text generated by Visual Studio. |
| SA1609 | Validates that a public or protected property contains a documentation header with a value tag. |
| SA1610 | Validates that a property's value tag contains a filled-in description. |
| SA1611 | Validates that an element's documentation header contains a param tag for each item in the element's parameter list. |
| SA1612 | Validates that an element's documentation header does not contain param tags for parameters which do not exist in the element's parameter list. |
| SA1613 | Validates that all param tags in an element's documentation header contain a filled-in name attribute. |
| SA1614 | Validates that an element's documentation header contains filled-in descriptions for each parameter in the element's parameter list. |
| SA1615 | Validates that an element's documentation header contains a returns tag if the element has a return value. |
| SA1616 | Validates that an element's returns tag contains a filled-in description. |
| SA1617 | Validates that an element's documentation header does not contain a returns tag if the element has no return value. |
| SA1618 | Validates that an element's documentation header contains a typeparam tag for each of the element's generic types. |
| SA1619 | Validates that a partial class, struct, etc. contains a documentation header with a typeparam tag for each of the element's generic types, unless these types are documented on another part of the element. |
| SA1620 | Validates that an element's documentation header does not contain typeparam tags for types which are not part of the element's generic type list. |
| SA1621 | Validates that all typeparam tags in an element's documentation header contain a filled-in name attribute. |
| SA1622 | Validates that an element's documentation header contains filled-in descriptions for each item in the element's generic type list. |
| SA1623 | Validates that a property's summary description text begins with the correct syntax, depending upon whether the property exposes get or set accessors. |
| SA1624 | Validates that a property's summary description text does not include a description for a set accessor when the property exposes only a get accessor. |
| SA1625 | Validates that an element's documentation header does not contain repeated documentation text. |
| SA1626 | Validates that comments do not begin with three forward slashes in a row, making them difficult to distinguish from documentation headers. |
| SA1627 | Validates that the description within a documentation tag is filled-in. |
| SA1628 | Validates that the documentation text within a documentation section begins with a capital letter. |
| SA1629 | Validates that the documentation text within a documentation section ends with a period. |
| SA1630 | Verifies that the documentation text within a documentation section contains at least two words, separated by whitespace. |
| SA1631 | Verifies that the documentation text within a documentation section does not contain an excessive amount of symbols, making it difficult to read. |
| SA1632 | Verifies that the documentation text within a documentation section meets or exceeds a minimum length. |
| SA1633 | Validates that a file contains a properly formatted file header. |
| SA1634 | Validates that a file header contains a copyright tag. |
| SA1635 | Validates that a file header contains a filled-in copyright tag. |
| SA1636 | Validates that a file header contains a copyright matching specific copyright text. |
| SA1637 | Validates that a file header contains a file attribute. |
| SA1638 | Validates that a file header contains a file attribute which contains the name of the file. |
| SA1639 | Validates that a file header contains a filled-in summary description. |
| SA1640 | Validates that a file header contains a filled-in company attribute. |
| SA1641 | Validates that a file header contains a company attribute which contains a specific company name. |
| SA1500 | Validates that the opening or closing curly bracket in a bracketed statement is placed on its own line if the statement spans multiple lines. |
| SA1501 | Validates that a bracketed statement is not placed on a single line. |
| SA1502 | Validates that a bracketed element is not placement on a single line. |
| SA1503 | Validates that opening and closing curly brackets are always included, even if the statement type allows them to be omitted. |
| SA1504 | Validates that an accessor in a property or indexer is only placed on a single line if all accessors in the property or indexer are placed on a single line. |
| SA1505 | Validates that an opening curly bracket in a bracketed statement or element is not followed by a blank line. |
| SA1506 | Validates that a documentation header is not followed by a blank line. |
| SA1507 | Validates that the code does not contain multiple blank lines in a row. |
| SA1508 | Validates that a closing curly bracket in a bracketed statement or element is not preceded by a blank line. |
| SA1509 | Validates that an opening curly bracket in a bracketed statement or element is not preceded by a blank line. |
| SA1510 | Validates than an else, catch, or finally statement is not preceded by a blank line. |
| SA1511 | Validates that the while keyword in a do-while statement is not preceded by a blank line. |
| SA1512 | Validates that a comment is not followed by a blank line. (This does not apply to C-style comments.) |
| SA1513 | Validates that a bracketed statement or element is followed by a blank line. |
| SA1514 | Validates that a documentation header is preceded by a blank line, or is the first item in its scope. |
| SA1515 | Validates that a comment is preceded by a blank line, or is the first item in its scope. |
| SA1400 | Validates that an access modifier is declared for an element. |
| SA1401 | Validates that a field is declared with private access. |
| SA1402 | Validates that a C# document does not contain more than one class at the root level. |
| SA1403 | Validates that a C# document does not contain more than one namespace directive. |
| SA1404 | Validates that a Code Analysis suppression contains a justifiction describing the reason for the suppression. |
| SA1405 | Validates that calls to Debug.Assert provide a message in the second parameter describing the reason for the assert. |
| SA1406 | Validates that calls to Debug.Fail provide a message in the first parameter describing the reason for the failure. |
| SA1300 | Validates that names of certain types of elements begin with an upper-case letter. |
| SA1301 | Validates that names of certain types of elements begin with a lower-case letter. |
| SA1302 | Validates that the name of an interface begins with the capital letter 'I'. |
| SA1303 | Validates that the name of a constant begins with an upper-case letter. |
| SA1304 | Validates that the name of a readonly field begins with an upper-case letter, unless the field is declared private. |
| SA1305 | Validates that a variable name is not prepended with lower-case characters matching the signature of Hungarian notation. |
| SA1306 | Validates that the name of a variable or field begins with a lower-case letter. |
| SA1307 | Validates that the name of a public or internal field must begin with an upper-case letter. |
| SA1308 | Validates that the name of a member variable does not begin with the 'm_' syntax. |
| SA1309 | Validates that the name of a field does not begin with an underscore. |
| SA1310 | Validates that the name of a field does not contain underscores. |
| SA1200 | Validates that all using directives are placed within a namespace, if a namespace exists in the file. |
| SA1201 | Validates that elements are placed in the correct order. |
| SA1202 | Validates that elements of the same type are placed in order by access. |
| SA1203 | Validates that all constant and readonly elements are placed before non-constant, non readonly elements of the same type. |
| SA1204 | Validates that all static elements are placed before non-static elements of the same type. |
| SA1205 | Validates that a partial element has a declared access modifier, which is necessary for determining the order of partial elements. |
| SA1206 | Verifies the ordering of keywords in an element declaration. |
| SA1207 | Verifies the ordering of the internal and protected keywords in an element with protected internal access. |
| SA1100 | Verifies that the 'base.' prefix is not misused. |
| SA1101 | Verifies that calls to local members are prefixed with the 'this.' notation. |
| SA1102 | Validates that blank lines are not placed between clauses within a query expression. |
| SA1103 | Verifies that each clause in a query expression must begin on a new line, unless the entire expression is on a single line. |
| SA1104 | Verifies that a query clause begins on a new line if the previous clause spans multiple lines. |
| SA1105 | Validates that a query clause spanning multiple lines begins on a new line. |
| SA1106 | Detects the presense of extra, unnecessary semicolons in the code. |
| SA1107 | Validates that multiple statements are not placed on a single line of code. |
| SA1108 | Validates that there are no comments placed between the declaration and opening bracket in a bracketed statement. |
| SA1109 | Validates that there are no regions placed between the declaration and opening bracket in a bracketed statement. |
| SA1110 | Verifies that the opening bracket of a parameter list is placed just after the name of the method, on the same line. |
| SA1111 | Verifies that the closing bracket of a parameter list is placed just after the last parameter, on the same line. |
| SA1112 | Verifies that the closing bracket of a parameter list is placed just after the opening bracket when the method has no parameters. |
| SA1113 | Verifies that a comma between two parameters is placed just after the previous parameter, on the same line. |
| SA1114 | Verifies that the first parameter in a parameter list is placed on the same line as the opening bracket, or on the next line. |
| SA1115 | Verifies that a parameter is placed on the line after the previous comma, in a multi-line parameter list. |
| SA1116 | Verifies that the first parameter in a parameter list is placed on the line after the opening bracket, in a multi-line parameter list. |
| SA1117 | Verifies that each parameter in a parameter list is placed on its own line, unless all parameters are on the same line. |
| SA1118 | Validates that no parameter spans across multiple lines, other than the first parameter in a parameter list. |
| SA1119 | Verifies that the code does not contain extra, unnecessary parenthesis. |
| SA1120 | Validates that a comment contains description text. |
| SA1121 | Enforces the use of the built-in types rather than the actual types that they represent. |
| SA1000 | Validates the spacing before and after a reserved keyword. |
| SA1001 | Validates the spacing before and a comma. |
| SA1002 | Validates the spacing before and a semicolon. |
| SA1003 | Validates the spacing before and after an operator symbol. |
| SA1004 | Verifies that the forward slashes at the beginning of an documentation header line are followed by a single space. |
| SA1005 | Verifies that the forward slashes at the beginning of a comment are followed by a single space. |
| SA1006 | Verifies that there is no space between the opening hash mark and keyword within a preprocessor statement. |
| SA1007 | Verifies that there is a single space between the 'operator' keyword and the operator symbol within an operator overload. |
| SA1008 | Validates the spacing before and after an opening parenthesis. |
| SA1009 | Validates the spacing before and after a closing parenthesis. |
| SA1010 | Validates the spacing before and after an opening square bracket. |
| SA1011 | Validates the spacing before and after a closing square bracket. |
| SA1012 | Validates the spacing before and after an opening curly bracket. |
| SA1013 | Validates the spacing before and after a closing curly bracket. |
| SA1014 | Validates the spacing before and after an opening bracket in a generic type. |
| SA1015 | Validates the spacing before and after a closing bracket in a generic type. |
| SA1016 | Validates the spacing before and after an opening attribute bracket. |
| SA1017 | Validates the spacing before and after a closing attribute bracket. |
| SA1018 | Verifies that a nullable type symbol is not preceded by white space. |
| SA1019 | Validates the spacing before and after a member access symbol. |
| SA1020 | Validates the spacing before and after an increment or decrement symbol. |
| SA1021 | Validates the spacing before and after a negative sign. |
| SA1022 | Validates the spacing before and after a positive sign. |
| SA1023 | Validates the spacing before and after a dereference or address-of symbol. |
| SA1024 | Validates the spacing before and after a colon. |
| SA1025 | Verifies that the code does not contain more than one spacing in a row. |
| SA1026 | Verifies that there is no space between the new keyword and the opening square bracket in an implicitly typed array allocation. |
| SA1027 | Verifies that the code does not contain tabs. |