powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / SqlConnection
8 сообщений из 8, страница 1 из 1
SqlConnection
    #36763194
наутилус
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть программа, для обращений к БД ипользую функцию приведённую ниже.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
        private static readonly SqlConnection CnnGlobal = new SqlConnection();

        private static SqlConnection conDB()
        {
            if ((CnnGlobal.State == ConnectionState.Closed) | (CnnGlobal.State == ConnectionState.Broken))
            {
                try
                {

                    CnnGlobal.ConnectionString = (
                                                    "Data Source=" + ServerSql + 
                                                    ";Initial Catalog=" + ServerSqlBase + 
                                                    ";User ID=" + ServerSqlLogin + 
                                                    ";Password=" + ServerSqlPass
                                                );
                    CnnGlobal.Open();
                }
                catch (Exception ex)
                {
                    var frame = new StackFrame(0);
                    const string strAction = "Ошибка";
                    var strParam = ex.Message;
                    ClsMain.log(strAction, strParam, frame.GetMethod().Name, true);
                    return null;
                }
            }
            
            return CnnGlobal;
        }
всё хорошо, кроме - если открыл ридер, то ещё один ридер нельзя открыть используя данный SqlConnection.
вот как эту ситуацию обыграть красиво? (если SqlConnection "занят", то функция должна возвращать новый SqlConnection)
с ув. наутилус
...
Рейтинг: 0 / 0
SqlConnection
    #36763277
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на одной коннекции два ридера не получается. ОТкрывайте еще одну. И как написано в соседней теме - открыл коннект, прочитал, закрыл
...
Рейтинг: 0 / 0
SqlConnection
    #36763285
наутилус
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Winnipuhна одной коннекции два ридера не получается. ОТкрывайте еще одну. И как написано в соседней теме - открыл коннект, прочитал, закрыл
да я уже понял... открыл-закрыл. ок. щас перепилю.
...
Рейтинг: 0 / 0
SqlConnection
    #36763338
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
наутилусWinnipuhна одной коннекции два ридера не получается. ОТкрывайте еще одну. И как написано в соседней теме - открыл коннект, прочитал, закрыл
да я уже понял... открыл-закрыл. ок. щас перепилю.
Код: plaintext
using ( SqlConnection = ...)
...
Рейтинг: 0 / 0
SqlConnection
    #36763407
dmitry_shch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
все можно, читайте про марс :) (MARS)
работал в свое время - нормально, проблем не возникает.

надо добавить в строку соединения: MultipleActiveResultSets=True

пример:
http://msdn.microsoft.com/en-us/library/yf1a7f4f(VS.80).aspx
...
Рейтинг: 0 / 0
SqlConnection
    #36763454
наутилус
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо Winnipuh, за ссылку в другом топике.
http://msdn.microsoft.com/ru-ru/library/8xx3tyca.aspx

вопрос снят )
...
Рейтинг: 0 / 0
SqlConnection
    #36763684
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dmitry_shchвсе можно, читайте про марс :) (MARS)
работал в свое время - нормально, проблем не возникает.

надо добавить в строку соединения: MultipleActiveResultSets=True

пример:
http://msdn.microsoft.com/en-us/library/yf1a7f4f(VS.80).aspx

да, вы правы, марс да.. но вопрос надо ли?
...
Рейтинг: 0 / 0
SqlConnection
    #36763797
dmitry_shch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а надо ли - зависит от стратегии "управления" сессиями (соединениями)

Модератор: Тема перенесена из форума "WinForms, .Net Framework".
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / SqlConnection
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]