在Comparer <t>上找不到符号

时间:2015-06-20 04:34:14

标签: c# .net generics abstract

我正在使用.net framework 4.0

出于某种原因,visual studio将方法突出显示为红色,工具提示包含:

'无法解析符号'创建''

我不明白为什么编译器会抱怨。它是泛型.net框架类的静态方法:

System.Collections.Generic.Comparer<string>.Create((x,y)=>x.CompareTo(y));

Comparer类上存在Create方法。静态方法/属性的visual studio下拉选项只显示类Comparer上的静态属性'Default',我不明白它为什么不显示静态Create方法。

以下是该类的微软代码:

public abstract class Comparer<T> : IComparer, IComparer<T>
{
    public static Comparer<T> Create(Comparison<T> comparison)
    {
        Contract.Ensures(Contract.Result<Comparer<T>>() != null);

        if (comparison == null)
            throw new ArgumentNullException("comparison");

        return new ComparisonComparer<T>(comparison);
    }

1 个答案:

答案 0 :(得分:0)

好的 - 感谢John Saunders - 我查看了microsoft文档,并在.net 4.5中引入了create方法。

我不确定为什么visual studio会在项目设置为4.0时显示代码的.net 4.5版本