avoid excessive parameters on generic types
do not declare static members on generic types
do not nest generic types in member signatures
generic methods should provide type parameter
use generic event handler instances
use generics where appropriate
see also
引起的原因:
一个使用.net framework2.0的程序集有一个输出类型实现了system.collections.ienumerable接口,但是没有实现system.collections.genceric.ienumerable<t>接口。如果这个类型实现了system.collections.idictionary接口,将不被这个规则所检察。
描述:
为了提升一个集合的可用性,应该实现范型集合接口中的一个。这样,这个集合将能够被用来声明下面的范型类。
- system.collections.generic.list<t>
- system.collections.generic.queue<t>
- system.collections.generic.stack<t>
修复:
实现下面的范型集合接口中的一个。
- system.collections.generic.ienumerable<t>
- system.collections.generic.icollection<t>
- system.collections.generic.ilist<t>
例外:
不符合这条规则是安全的,但是,这样将会使你的集合类有更多的使用限制。