В C# вы можете вернуть ссылку на уровень ниже url-пути, используя класс Uri
. Для этого есть несколько способов, вот два из них:
- Использование свойства
Segments
объектаUri
.Segments
представляет собой массив строк, содержащий отдельные части url-пути. Для доступа к уровням ниже текущего пути вы можете модифицироватьSegments
с помощью методовSkip
иToArray
. Например:
Uri url = new Uri("https://www.example.com/level1/level2/level3"); string[] segments = url.Segments.Skip(1).ToArray(); string newUrl = string.Join("", segments); Console.WriteLine(newUrl);
В этом примере Skip(1)
указывает, что мы пропускаем первый сегмент url-пути ("level1"), а ToArray
преобразует оставшиеся сегменты в массив строк. Затем мы объединяем эти сегменты в строку с помощью string.Join
, чтобы получить ссылку на уровень ниже текущего пути ("level2/level3").
- Использование метода
GetLeftPart
объектаUri
. МетодGetLeftPart
возвращает часть url-пути до указанного уровня. Вы можете указать уровень, используя перечислениеUriPartial
. Например:
Uri url = new Uri("https://www.example.com/level1/level2/level3"); string newUrl = url.GetLeftPart(UriPartial.Path); Console.WriteLine(newUrl);
В этом примере UriPartial.Path
говорит GetLeftPart
вернуть часть url-пути до текущего уровня ("https://www.example.com/level1/level2").
Оба приема будут работать в приведенном примере. Зависит от ваших потребностей, какой из них использовать. У вас также может быть другой формат URL-пути, поэтому адаптируйте код в зависимости от вашего случая.