Как извлечь KeyValuePair из вызова функции?

Я строю функцию, которая возвращает два параметра. Я узнал, что это может быть достигнуто с

    KeyValuePair<string, int> ExtractGroup(string s, int offset, int TagLength)
    {
    .. 
    return new KeyValuePair<string, int>(part, startIndex);
    }

Но как мне присвоить возвращаемое значение, когда я вызываю эту функцию обратно к 2 переменным?

string GetPart = ExtractGroup(data.ToString(), 0 , data.ToString().Length)[1]
string GetIndex = ExtractGroup(data.ToString(), 0 , data.ToString().Length)[2]

Я пытался и гуглил в течение более 2 часов и просто не могу получить это

1 ответ

Решение

KeyValuePair<,> имеет .Key и .Value, так:

var pair = ExtractGroup(data.ToString(), 0 , data.ToString().Length);
var part = pair.Key;
var startIndex = pair.Value;

То же самое относится и к Tuple<,>кроме как бы .Item1 а также .Item2,

Другие вопросы по тегам