Ответ 1
Этот метод внутренне вызывает метод Uri.IsWellFormedUriString. Когда вы вызываете этот метод на относительном URL-адресе, содержащем фрагмент, он возвращает false. Существует ошибка в MS Connect, которая закрыта по соображениям дизайна.
Когда вы используете этот метод на абсолютном URL (со схемой, подобной http/https), метод ведет себя так, как ожидалось. Я думаю, причина в том, что класс Uri предназначен для работы не только с URL-адресами HTTP. Если вы не укажете протокол (относительный URL), используется общий парсер URL-адресов, который не допускает фрагменты.
Итак, у вас есть две возможности:
- Разделите фрагмент перед вызовом метода
- Вызовите метод по абсолютному URL (
http://foo.com/t/test-team-3/tasks#/lists/15
), так как в любом случае, если вы вызываете этот метод по относительному URL-адресу, мы можем ожидать, что это локальный URL-адрес.