Ваша установка должна быть нарушена.Код на самом деле не делает ничего жизненно важного, поэтому нет причин зависать там.
Конструктор SqlConnection
делает это:
public SqlConnection() {
this.ObjectID = Interlocked.Increment(ref SqlConnection._objectTypeCount);
base();
GC.SuppressFinalize(this);
this._innerConnection = DbConnectionClosedNeverOpened.SingletonInstance;
}
Итак, он увеличивает переменнуюкопирует его в свойство, вызывает базовый конструктор, удаляет объект из очереди финализатора и копирует ссылку.Вот и все.
Базовый (DbConnection
) конструктор делает это:
protected DbConnection() {
}
Итак, здесь нет ничего, что могло бы вообще что-либо делать с фактическим соединением с базой данных.Все, что делается, когда вы фактически открываете соединение.
Ваша программа может также зависать после первого вызова Console.WriteLine
, и даже не доходить до создания SqlConnection
объекта.