Как заменить имя хоста в URL в C #? - PullRequest
0 голосов
/ 05 февраля 2019

У меня есть эта функция

    public static string ReplaceHost(string original, string newHostName) {
        UriBuilder builder = new UriBuilder(original);
        builder.Host = newHostName;
        return builder.Uri.ToString();
    }

, однако входные данные такие же, как

original - https://test.com/a/b/c
newHostName - https://test2.com

, однако это приводит к недопустимому исключению uri.Я думаю, это потому, что newHostName не должно иметь части https://.Как я могу отредактировать этот код, чтобы он работал с моими входами?

Спасибо

1 Ответ

0 голосов
/ 05 февраля 2019

Uri.Host

Строка, содержащая имя хоста.Обычно это DNS-имя хоста или IP-адрес сервера.

Вам просто нужно .Host часть newHostName:

public static string ReplaceHost(string original, string newHostName)
{
    UriBuilder builder = new UriBuilder(original);
    builder.Host = new Uri(newHostName).Host;
    return builder.ToString();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...