# .NET API
# ADO.NET
Подключение к СУБД NitrosBase из C# производится через драйвер ADO.Net с названием Nitros.Net
. Он включает в себя две библиотеки: Nitros.Net.Win.dll
и nbclient.dll
, и реализует подмножество интерфейсов, стандартных для ADO.Net:
IDbConnection
IDbTransaction
IDbCommand
IDataReader
IDbDataParameter
IDataParameterCollection
# 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
) следующие методы:
GetBoolean
GetByte
GetBytes
GetChars
Свойство 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 →