Соединение OleDB работает только при отладке - PullRequest
3 голосов
/ 28 мая 2010

У меня есть приложение C #, которое подключается к именованному экземпляру SQL Express на локальном компьютере с помощью OleDBConnection:

_connection = new OleDbConnection(_strConn);
_connection.Open();

_strConn is something like this: "Provider=sqloledb;Data Source=.\NAMEDINSTANCE;Initial Catalog=dbname;User Id=sa;Password=password;"

Если я отлаживаю приложение, соединение работает нормально. Если я запускаю приложение из Проводника Windows (та же самая отладочная компиляция), я получаю « OleDBException: Истекло время ожидания входа в систему » в строке Open () через 30 секунд. Странно то, что исключение происходит, даже если я присоединяю отладчик к exe. Я вижу, что строка подключения верна, и все выглядит нормально. Я не могу найти дополнительную информацию в журнале ошибок SQL Express или в SQL Activity Monitor.

Если это поможет, вот исключение:

    System.Data.OleDb.OleDbException: Login timeout expired
   at System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection)
   at System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup)
   at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
   at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
   at System.Data.OleDb.OleDbConnection.Open()

Я полагаю, что найти проблему с информацией, которую я привожу здесь, может быть сложно, но я не знаю, где еще искать или какие другие тесты делать, поэтому любые идеи о том, что это может быть или какой тест я мог бы сделать выяснить это будет по достоинству.

1 Ответ

0 голосов
/ 29 мая 2010

Я исправил это. К сожалению, я не знаю, как это сделать: я удалил выходную папку, сбросил некоторые ссылки на проекты, перенастроил несколько вещей в SQL Express, перезапустил компьютер и т. Д. В какой-то момент он снова начал работать нормально. Меня все еще раздражает, что я не могу узнать, что OleDb делал при подключении в течение 31 секунды, но проблема исчезла (пока).

Спасибо за вашу помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...