org.sonar.plugins.csharp.S4052.html Maven / Gradle / Ivy
Why is this an issue?
With the advent of .NET Framework 2.0, certain practices and types have become obsolete.
In particular, exceptions should now extend System.Exception
instead of System.ApplicationException
. Similarly, generic
collections should be used instead of the older, non-generic, ones. Finally when creating an XML view, you should not extend
System.Xml.XmlDocument
. This rule raises an issue when an externally visible type extends one of these types:
- System.ApplicationException
- System.Xml.XmlDocument
- System.Collections.CollectionBase
- System.Collections.DictionaryBase
- System.Collections.Queue
- System.Collections.ReadOnlyCollectionBase
- System.Collections.SortedList
- System.Collections.Stack
How to fix it
Code examples
Noncompliant code example
using System;
using System.Collections;
namespace MyLibrary
{
public class MyCollection : CollectionBase // Noncompliant
{
}
}
Compliant solution
using System;
using System.Collections.ObjectModel;
namespace MyLibrary
{
public class MyCollection : Collection<T>
{
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy