Класс TraceServer не может инициализироваться как средство чтения при указании на локальный SQL Server Express.C#

Место общения программистов C#
Ответить
Anonymous
 Класс TraceServer не может инициализироваться как средство чтения при указании на локальный SQL Server Express.

Сообщение Anonymous »

Я пытаюсь создать трассировку в .NET через класс TraceServer. Мой код выглядит следующим образом:

Код: Выделить всё

var connectionInfo = new SqlConnectionInfo
{
ServerName = @".\sqlexpress",
DatabaseName = "master",
UseIntegratedSecurity = true,
};

// note that at this point I can run a simple SELECT query
// using connectionInfo.ConnectionString

var server = new Microsoft.SqlServer.Management.Trace.TraceServer();
server.InitializeAsReader(
connectionInfo,
@"C:\users\chasemedallion\desktop\trace.tdf"
);

while (server.Read()) {
Console.WriteLine(server["TextData"]);
}
Однако InitializeAsReader завершается с ошибкой со следующим исключением:


Microsoft.SqlServer.Management.Trace.SqlTraceException: не удалось инициализировать объект как средство чтения. ---> System.Runtime.InteropServices.COMException

в ?A0x97257f7e.ProcessError(Int32 hr, UInt16* lpszMessage)

в Microsoft.SqlServer.Management.Trace.CTraceControllerBase.InitSource(Boolean bReOpen)

в Microsoft.SqlServer.Management.Trace.CTraceObjectsRowsetController.InitSource(Boolean bReOpen)

в Microsoft.SqlServer.Management.Trace.TraceServer.InitializeAsReader(ConnectionInfoBase serverConnInfo, String ProfileFileName)

--- Конец внутреннего стека исключений трассировка ---

at Microsoft.SqlServer.Management.Trace.TraceServer.InitializeAsReader(ConnectionInfoBase serverConnInfo, String ProfileFileName)


Что может быть причиной этого? Я рассмотрел этот вопрос, но я не работаю как служба, и моя локальная учетная запись имеет доступ администратора к базе данных (я могу запускать трассировку через профилировщик SQL Server).

В качестве альтернативы я был бы рад другому способу программного запуска трассировки через .NET. Мне нужно иметь возможность обращаться как к локальным, так и к удаленным серверам (как это делает профилировщик SQL Server).

Подробнее здесь: https://stackoverflow.com/questions/193 ... -sql-serve
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»