在方法之间取样

时间:2014-07-26 09:32:04

标签: c# .net generics

我收到此错误:

  

无法从用法推断出方法'Extensions.Extensions.Between(string,string,string)'的类型参数。尝试明确指定类型参数。

    public static string Between<T>(this string Source, string First, string Second)
    {
        return Source.Split(new string[] { First }, StringSplitOptions.None)[1].Split(new string[] { Second }, StringSplitOptions.None)[0].Trim();
    }

string c = "abcd".Between("b", "d");

1 个答案:

答案 0 :(得分:3)

您的通用类型T未被使用,因此编译器无法推断它是哪种类型。您可以从方法中删除它:

public static string Between(this string Source, string First, string Second)
{
    return Source.Split(new string[] { First }, StringSplitOptions.None)[1].Split(new string[] { Second }, StringSplitOptions.None)[0].Trim();
}