Нет, ответвление все еще живо, но в тот момент это - точно то же как соединительная линия. Если Вы продолжаете разрабатывать на ответвлении, Вы свободны повторно объединиться с соединительной линией позже.
с использованием LINQ
list.Skip(fromRange).Take(toRange - fromRange)
Для общего List
это метод GetRange (int, int)
.
Изменить: обратите внимание, что это неглубокая копия, а не «вид» оригинала. Я не думаю, что C # предлагает именно такую функциональность.
Edit2: как указывает Камари, вы можете иметь представление только для чтения:
List<int> integers = new List<int>() { 5, 6, 7, 8, 9, 10, 11, 12 };
IEnumerable<int> view = integers.Skip(2).Take(3);
integers[3] = 42;
foreach (int i in view )
// output
Выше будет напечатано 7, 42, 9.