Получение точного доменного имени из любого URL [дубликат]

Я хочу разъяснить эту ситуацию.

Согласно инструкциям Microsoft, это - хорошая практика для обеспечения Close метод, где подходящий. Здесь цитата от [1 117], руководство по проектированию Платформы

Рассматривает обеспечение метода Close(), в дополнение к эти Dispose(), если близко стандартная терминология в области. При выполнении так, важно, чтобы Вы сделали Close реализация идентичный Dispose...

В большинстве случаев Close и Dispose методы эквивалентны. основное различие между Close и Dispose в случае SqlConnectionObject:

приложение может звонить Close больше чем в один раз. Никакое исключение не сгенерировано.

, Если Вы звонили Dispose метод SqlConnection, объектное состояние будет сброшено. При попытке назвать какой-либо метод на склонном SqlConnection объект, Вы получите исключение.

, Который сказал:

  • при использовании объекта соединения одно время используйте Dispose.
  • , Если объект соединения должен быть снова использован, используйте Close метод.

24
задан abatishchev 17 December 2014 в 18:56
поделиться

2 ответа

Попробуйте класс System.Uri.

http://msdn.microsoft.com/en-us/library/system.uri.aspx

new Uri("http://www.google.co.uk/path1/path2").Host

, который возвращает «www.google.co.uk» , Оттуда это манипуляции со строками. : /

7
ответ дан 28 November 2019 в 22:52
поделиться

Другой вариант, без зависимостей:

string GetDomainPart(string url)
{
    var doubleSlashesIndex = url.IndexOf("://");
    var start = doubleSlashesIndex != -1 ? doubleSlashesIndex + "://".Length : 0;
    var end = url.IndexOf("/", start);
    if (end == -1)
        end = url.Length;

    string trimmed = url.Substring(start, end - start);
    if (trimmed.StartsWith("www."))
        trimmed = trimmed.Substring("www.".Length );
    return trimmed;
}

Примеры:

http://www.google.com → google.com

http://www.google.co.uk/path1/path2 → google.co.uk

http://localhost.intranet:88/path1/path2 → localhost.intranet:88

http://www2.google.com → www2.google.com

0
ответ дан 28 November 2019 в 22:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: