Вопрос по StiSqlDatabase и Application Role

Обсуждение Stimulsoft Reports.NET
Ответить
Denis
Сообщения: 1
Зарегистрирован: 22 май 2009, 04:24
Откуда: Chelyabinsk
Контактная информация:

Вопрос по StiSqlDatabase и Application Role

Сообщение Denis »

Примеряю репортер на предмет внедрения в готовое winforms приложение и возник вопрос. База MSSQL 2008, специфика приложения такова, что после подсоединения к базе с помощью SqlConnection активируется роль приложения путем вызова exec sp_setapprole 'FrontOfficeApp', 'verylongpassword' - иначе большинство объектов БД недоступно даже на чтение (разграничение прав доступа). Коррекцию connection string я уже понял как сделать (отчеты будут делаться на девелопмент сервере и копироваться на продакшн):

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

string applicationConnectionString = "Data Source=dbserver; Initial Catalog=mydb; Pooling=false; uid=foa; password=123; MultipleActiveResultSets=true; TrustServerCertificate=True");
rep1.Load("stiReport1.mrt");
foreach(StiDatabase db in rep1.Dictionary.Databases)
    if(db is StiSqlDatabase) (db as StiSqlDatabase).ConnectionString = applicationConnectionString;
А вот как активировать application role после подсоединения - не знаю. Поискал события (на которые можно подписаться и выполнить нужную команду) в StiSqlDatabase типа AfterConnect или похожих - ничего не нашел. Как мне вызвать хранимую процедуру после соединения с БД?
fantomus
Сообщения: 215
Зарегистрирован: 22 апр 2009, 06:41
Откуда: Kyiv, Ukraine

Вопрос по StiSqlDatabase и Application Role

Сообщение fantomus »

Поддерживаю вопрос.
Возможность вызова события после соединения с БД для параметризации сессии очень нужна.
Такой подход используется часто.
Хотелось бы узнать, как это можно сделать.
Jan
Сообщения: 495
Зарегистрирован: 19 фев 2009, 11:14

Вопрос по StiSqlDatabase и Application Role

Сообщение Jan »

Здравствуйте,

Добавили события Connecting, Connected, Disconnecting, Disconnected к объекту соединению. События доступны в Properties панели. Изменения будут включены в билд от 25 мая.

Спасибо.
Ответить