# .NET API
# ADO.NET
Подключение к СУБД NitrosBase из C# производится через драйвер ADO.Net с названием Nitros.Net. Он включает в себя две библиотеки: Nitros.Net.Win.dll и nbclient.dll, и реализует подмножество интерфейсов, стандартных для ADO.Net:
IDbConnectionIDbTransactionIDbCommandIDataReaderIDbDataParameterIDataParameterCollection
# IDbConnection: NitrosBaseConnection
Интерфейс IDbConnection реализован в классе NitrosBaseConnection.
Формат строки соединения (connection string):
data source='dbserver';initial catalog='dbname'; userid='username';password='password';
Справка по свойствам и методам интерфейса приведена в документации Microsoft (opens new window).
# IDbTransaction: NitrosBaseTransaction
Интерфейс IDbTransaction реализован в классе NitrosBaseTransaction.
Транзакции в СУБД NitrosBase в настоящее время не поддерживаются.
Справка по свойствам и методам интерфейса приведена в документации Microsoft (opens new window).
# IDbCommand: NitrosBaseCommand
Интерфейс IDbCommand реализован в классе NitrosBaseCommand.
- Метод
ExecuteNonQueryвсегда возвращает 0, поскольку СУБД не поддерживает получение числа измененных запросом строк. - Метод
Cancelне делает ничего, поскольку соответствующий метод отсутствует в API СУБД. - Метод
Prepareпроизводит фактическую подстановку значений параметров в запрос на стороне клиента.
Справка по свойствам и методам интерфейса приведена в документации Microsoft (opens new window).
# IDataReader: NitrosBaseDataReader
Интерфейс IDataReader реализован в классе NitrosBaseDataReader.
Не поддерживаются (возникает исключение NotImplementedException) следующие методы:
GetBooleanGetByteGetBytesGetChars
Свойство RecordsAffected всегда имеет -1, поскольку СУБД не поддерживает определение числа затронутых записей.
Справка по свойствам и методам интерфейса приведена в документации Microsoft (opens new window).
# IDbDataParameter: NitrosBaseDataParameter
Интерфейс IDbDataParameter реализован в классе NitrosBaseDataParameter.
Свойства Scale, Precision, Size, ParameterDirection не поддерживаются или поддерживаются частично:
PrecisionиScaleвсегда имеют значение 0, при попытке присвоения значения возникает исключениеNotImplementedException.Sizeвсегда возникает исключениеNotImplementedException.ParameterDirectionвсегда имеет значениеInputDirection, при попытке присвоения значения возникает исключениеNotImplementedException.
Справка по свойствам и методам интерфейса приведена в документации Microsoft (opens new window).
# IDataParameterCollection: NitrosBaseDataParameterCollection
IDataParameterCollection реализован в NitrosBaseDataParameterCollection.
Справка по свойствам и методам интерфейса приведена в документации Microsoft (opens new window).
# Драйвер SSRS
Драйвер Microsoft Reporting Services позволяет строить отчеты на основе данных, хранящихся в СУБД NitrosBase. Регистрация драйвера описана на сайте Microsoft (opens new window).
При регистрации в RSReportDesigner.config:
- для Visual Studio следует использовать 32-разрядную сборку (
nbclient32.dll,Nitros.Net.Win.dll) - обе библиотеки (
nbclient32.dll,Nitros.Net.Win) нужно скопировать во все указанные в инструкции каталоги - теги для
RSReportDesigner.config:
<Extension Name="NB"
Type="NitrosData.Nitros.Net.NitrosBaseConnectionReporting,Nitros.Net.Win"/>
<Extension Name="NB"
Type="Microsoft.ReportingServices.QueryDesigners.SMQLQueryDesigner,Microsoft.ReportingServices.QueryDesigners.Extensions"/>
← Native C/C++ API ODBC →