c#添加了扩展方法,但无法使用

c#添加了扩展方法,但无法使用,c#,extension-methods,C#,Extension Methods,我将扩展方法添加到ArraySegment中,如下所示,但当我将其用作 var lines = TextControl.Lines; ArraySegment<String> myArrSegOfRichTextControl = new ArraySegment<string>(lines,0,2); var-lines=TextControl.lines; ArraySegment m

我将扩展方法添加到ArraySegment中,如下所示,但当我将其用作

     var lines = TextControl.Lines;
     ArraySegment<String> myArrSegOfRichTextControl = 
                              new ArraySegment<string>(lines,0,2);
var-lines=TextControl.lines;
ArraySegment myArrSegOfRichTextControl=
新的数组排序(第0,2行);
键入myArrSegOfRichTextControl后,找不到visual studio prompt GetSegment方法。那么我如何调用扩展的方法呢?谢谢

namespace ArraySegmentExtension
{
    class ArraySegmentExtension 
    {
        #region ArraySegment related methods

        public static ArraySegment<T> GetSegment<T>(this T[] array, int from, int count)
        {
            return new ArraySegment<T>(array, from, count);
        }

        public static ArraySegment<T> GetSegment<T>(this T[] array, int from)
        {
            return GetSegment(array, from, array.Length - from);
        }

        public static ArraySegment<T> GetSegment<T>(this T[] array)
        {
            return new ArraySegment<T>(array);
        }

        public static IEnumerable<T> AsEnumerable<T>(this ArraySegment<T> arraySegment)
        {
            return arraySegment.Array.Skip(arraySegment.Offset).Take(arraySegment.Count);
        }

        public static T[] ToArray<T>(this ArraySegment<T> arraySegment)
        {
            T[] array = new T[arraySegment.Count];
            Array.Copy(arraySegment.Array, arraySegment.Offset, array, 0, arraySegment.Count);
            return array;
        }

        #endregion
    }
}
namespace ArraySegmentExtension
{
类ArraySegmentExtension
{
#区域排列相关方法
公共静态ArraySegment GetSegment(此T[]数组,int from,int count)
{
返回新的ArraySegment(数组、发件人、计数);
}
公共静态ArraySegment GetSegment(此T[]数组,int from)
{
返回GetSegment(array、from、array.Length-from);
}
公共静态ArraySegment GetSegment(此T[]数组)
{
返回新的ArraySegment(数组);
}
公共静态IEnumerable AsEnumerable(此ArraySegment ArraySegment)
{
返回arraySegment.Array.Skip(arraySegment.Offset).Take(arraySegment.Count);
}
公共静态T[]ToArray(此ArraySegment ArraySegment)
{
T[]数组=新的T[arraySegment.Count];
复制(arraySegment.Array,arraySegment.Offset,Array,0,arraySegment.Count);
返回数组;
}
#端区
}
}

如何使用ArraySegmentExtension添加
位于代码文件的顶部。

使用ArraySegmentExtension添加
如何位于代码文件顶部。

扩展方法必须在
静态类上定义。从:

  • 定义一个静态类以包含扩展方法
  • 尝试这样定义您的类:

    public static class ArraySegmentExtension
    {
        ...
    }
    

    扩展方法必须在
    静态类上定义。从:

  • 定义一个静态类以包含扩展方法
  • 尝试这样定义您的类:

    public static class ArraySegmentExtension
    {
        ...
    }
    

    类ArraySegmentExtension
    也应该是静态的。它必须是公共静态类ArraySegmentExtension
    类ArraySegmentExtension
    也应该是静态的。它必须是公共静态类ArrayseSegmentExtension