Почему SQL 2008 Profiler указывает, что хранимая процедура, запущенная из EF4, находится в режиме Master? - PullRequest
1 голос
/ 04 июня 2010

Использование Entity Framework 4 с хранимыми процедурами и SQL Server 2008 с пакетом обновления 1 (SP1) ... При запуске SQL Server Profiler (шаблон TSQL_SPs) строки, показывающие мой вызов хранимой процедуры и его операторы, говорят, что это произошло в DatabaseID = 1 (Master) но это на самом деле происходит в моей базе данных приложения. Процедуры выполняются правильно и возвращают данные, и они существуют только в моей базе данных приложения, так почему же Profiler помечает эти строки как находящиеся в Master? Это ошибка в Profiler?

Обратите внимание, что при запуске одного и того же кода для экземпляра SQL 2000 Profiler правильно отображает идентификатор базы данных приложения.

ОБНОВЛЕНИЕ : я проверил это на новой установке SQL Server 2008 R2, и он по-прежнему отображает это так, как если бы это было в Master.

ОБНОВЛЕНИЕ 2 : это было зарегистрировано, чтобы Соединиться в https://connect.microsoft.com/SQLServer/feedback/details/572246/profiler-reports-ef4-queries-as-occurring-in-master.

1 Ответ

3 голосов
/ 04 августа 2010

Содержит ли ваша строка подключения параметр 'MultipleActiveResultSets = True'? Если да, попробуйте удалить его и посмотреть на sql profiler.

...