我有以下界面
public interface IMyInterface
{
DataItem<decimal?> MyProperty { get; }
}
DataItem
类看起来像这样
public class DataItem<T>
{
private readonly string _name;
public DataItem(string name)
{
this._name = name;
}
public string Name
{
get
{
return _name;
}
}
public T Value { get; set; }
}
当我运行代码分析时,我收到警告
CA1006不要在成员签名中嵌套泛型类型考虑一个 设计'IMyInterface.MyProperty'不嵌套泛型类型 '的DataItem&LT;十进制&GT;'。
在MDSN documentation我被告知
请勿取消此规则的警告。
我一般倾向于遵循指导原则。那么我如何重构我的界面(或DataItem
类)来遵循这些指导原则呢?或者它更像是重构而不是重构?