Types should not extend certain base types

TypeName

TypesShouldNotExtendCertainBaseTypes

CheckId

CA1058

Category

Microsoft.Design

Breaking Change

Breaking

Cause

An externally visible type extends certain base types. Currently, this rule reports types that derive from the following types:

Rule Description

For .NET Framework version 1, it was recommended to derive new exceptions from ApplicationException. The recommendation has changed and new exceptions should derive from System.Exception or one of its subclasses in the System namespace.

Do not create a subclass of XmlDocument if you want to create an XML view of an underlying object model or data source.

How to Fix Violations

To fix a violation of this rule, derive the type from a different base type.

When to Exclude Warnings

Do not exclude a warning from this rule for violations concerning ApplicationException. It is safe to exclude a warning from this rule for violations about XmlDocument.