Согласно инструкциям Microsoft, это - хорошая практика для обеспечения Close
метод, где подходящий. Здесь цитата от [1 117], руководство по проектированию Платформы
Рассматривает обеспечение метода
Close()
, в дополнение к этиDispose()
, если близко стандартная терминология в области. При выполнении так, важно, чтобы Вы сделалиClose
реализация идентичныйDispose
...
В большинстве случаев Close
и Dispose
методы эквивалентны. основное различие между Close
и Dispose
в случае SqlConnectionObject
:
приложение может звонить
Close
больше чем в один раз. Никакое исключение не сгенерировано., Если Вы звонили
Dispose
методSqlConnection
, объектное состояние будет сброшено. При попытке назвать какой-либо метод на склонномSqlConnection
объект, Вы получите исключение.
, Который сказал:
Dispose
. Close
метод. Попробуйте класс 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» , Оттуда это манипуляции со строками. : /
Другой вариант, без зависимостей:
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