Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> InfoMessage 
:(
    Опции темы
Bogdan1024
  Дата 1.7.2008, 21:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1436
Регистрация: 28.9.2005
Где: Киев

Репутация: нет
Всего: 13



У конекшнов в ADO.NET есть чудесное свойство InfoMessage, которое позволяет считывать результаты PRINT'ов. Так вот, может ли случиться так, что одним и тем же конекшном будут по очереди пользоваться два процесса вытягивая конекшн из пула и таким образом в InfoMessage будет текст совсем не того PRINT'а, которого надо?


--------------------
user posted image
PM MAIL   Вверх
Idsa
Дата 2.7.2008, 08:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Насколько я знаю, в InfoMessage приходят не только print, но и T-SQL exception'ы с приоритетом <=10. Вот и MSDN похожего мнения:
Цитата

Clients that want to process warnings or informational messages sent by the server should create an SqlInfoMessageEventHandler delegate to listen to this event.

The InfoMessage event occurs when a message with a severity of 10 or less is returned by SQL Server. Messages that have a severity between 11 and 20 raise an error and messages that have a severity over 20 causes the connection to close.


Цитата(Bogdan1024 @  2.7.2008,  01:09 Найти цитируемый пост)
У конекшнов в ADO.NET есть чудесное свойство InfoMessage

Это не свойство, это event. И, как написано выше в выдержке из MSDN, подписавшись к нему, можно получать доступ ко всем низкоприоритетным сообщениям (сообщения с более высоким приоритетом вызывают exception).

Цитата(Bogdan1024 @  2.7.2008,  01:09 Найти цитируемый пост)
Так вот, может ли случиться так, что одним и тем же конекшном будут по очереди пользоваться два процесса вытягивая конекшн из пула и таким образом в InfoMessage будет текст совсем не того PRINT'а, которого надо? 

Ненене smile Это было бы равносильно тому, что один клиент отправил запрос SqlServer'у, а второй бы получал результаты. Насколько я понимаю, несмотря на то, что соединение находится в connection pool'е, использовать в один момент времени его может только один клиент.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0464 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.