Flexberry ORM 4.0.0
Класс ICSSoft.STORMNET.Business.SQLDataServiceabstract

Data service for SQL storage. Подробнее...

Граф наследования:ICSSoft.STORMNET.Business.SQLDataService:
ICSSoft.STORMNET.Business.IDataService ICSSoft.STORMNET.Business.IDataService ICSSoft.STORMNET.Business.MSSQLDataService ICSSoft.STORMNET.Business.ODBCDataService ICSSoft.STORMNET.Business.OracleDataService ICSSoft.STORMNET.Business.PostgresDataService ICSSoft.STORMNET.Business.DRDataService ICSSoft.STORMNET.Business.ODBCAccessDataService ICSSoft.STORMNET.Business.ODBCMySQLDataService

Открытые члены

virtual string FunctionToSql (SQLWhereLanguageDef sqlLangDef, Function function, delegateConvertValueToQueryValueString convertValue, delegatePutIdentifierToBrackets convertIdentifier)
 Преобразовать значение в SQL строку Подробнее...
 
Guid GetInstanceId ()
 Ключ инстанции сервиса. Подробнее...
 
abstract System.Data.IDbConnection GetConnection ()
 Вернуть объект System.Data.IDbConnection Подробнее...
 
virtual int GetObjectsCount (LoadingCustomizationStruct customizationStruct)
 Возвращает количество объектов удовлетворяющих запросу Подробнее...
 
int GetObjectIndex (LoadingCustomizationStruct lcs, FunctionalLanguage.Function limitFunction)
 Возвращает индекс первого объекта, встретившегося в массиве, при загрузке по указанному lcs. Объекты задаются через lf. Подробнее...
 
int[] GetObjectIndexes (LoadingCustomizationStruct lcs, FunctionalLanguage.Function limitFunction)
 Возвращает индексы объектов, встретившихся в массиве, при загрузке по указанному lcs. Объекты задаются через lf. Подробнее...
 
virtual IDictionary< int, string > GetObjectIndexesWithPks (LoadingCustomizationStruct lcs, FunctionalLanguage.Function limitFunction, int?maxResults=null)
 Возвращает индексы и ключи объектов, встретившихся в массиве, при загрузке по указанному lcs. Объекты задаются через lf. Подробнее...
 
 SQLDataService ()
 Construct data service with default settings. Подробнее...
 
 SQLDataService (ISecurityManager securityManager)
 Initializes a new instance of the SQLDataService class with specified security manager. Подробнее...
 
 SQLDataService (ISecurityManager securityManager, IAuditService auditService)
 Initializes a new instance of the SQLDataService class with specified security manager and audit service. Подробнее...
 
virtual void LoadObject (ICSSoft.STORMNET.DataObject dobject, bool ClearDataObject, bool CheckExistingObject, DataObjectCache DataObjectCache)
 Загрузка одного объекта данных Подробнее...
 
virtual void LoadObject (string dataObjectViewName, ICSSoft.STORMNET.DataObject dobject, bool ClearDataObject, bool CheckExistingObject, DataObjectCache DataObjectCache)
 Загрузка одного объекта данных Подробнее...
 
virtual void LoadObject (ICSSoft.STORMNET.View dataObjectView, ICSSoft.STORMNET.DataObject dobject, DataObjectCache DataObjectCache)
 Загрузка одного объекта данных Подробнее...
 
virtual void LoadObjectByExtConn (View dataObjectView, DataObject dobject, bool сlearDataObject, bool сheckExistingObject, DataObjectCache dataObjectCache, IDbConnection connection, IDbTransaction transaction)
 Загрузка объекта с указанной коннекцией в рамках указанной транзакции. Подробнее...
 
virtual void LoadObject (ICSSoft.STORMNET.View dataObjectView, ICSSoft.STORMNET.DataObject dobject, bool ClearDataObject, bool CheckExistingObject, DataObjectCache DataObjectCache)
 Загрузка одного объекта данных Подробнее...
 
virtual void LoadObject (string dataObjectViewName, ICSSoft.STORMNET.DataObject dobject, DataObjectCache DataObjectCache)
 Загрузка одного объекта данных Подробнее...
 
virtual void LoadObject (ICSSoft.STORMNET.DataObject dobject, DataObjectCache DataObjectCache)
 Загрузка одного объекта данных Подробнее...
 
string[] GetPropertiesInExpression (string expression, string namespacewithpoint)
 
virtual string GenerateSQLSelect (LoadingCustomizationStruct customizationStruct, bool ForReadValues, out STORMDO.Business.StorageStructForView[] StorageStruct, bool Optimized)
 получить запрос на вычитку данных Подробнее...
 
virtual string GenerateSQLSelect (LoadingCustomizationStruct customizationStruct, bool Optimized)
 получить запрос на вычитку данных Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (LoadingCustomizationStruct customizationStruct, DataObjectCache DataObjectCache)
 Загрузка объектов данных Подробнее...
 
virtual void LoadObjects (ICSSoft.STORMNET.DataObject[] dataobjects, ICSSoft.STORMNET.View dataObjectView, bool ClearDataobject, DataObjectCache DataObjectCache)
 Загрузка объектов данных Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (ICSSoft.STORMNET.View dataObjectView)
 Загрузка объектов данных по представлению Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (ICSSoft.STORMNET.View[] dataObjectViews)
 Загрузка объектов данных по массиву представлений Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (LoadingCustomizationStruct[] customizationStructs)
 Загрузка объектов данных по массиву структур Подробнее...
 
virtual DataObject[] LoadObjectsByExtConn (LoadingCustomizationStruct customizationStruct, ref object state, DataObjectCache dataObjectCache, IDbConnection connection, IDbTransaction transaction)
 Загрузка объектов с использованием указанной коннекции и транзакции. Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (LoadingCustomizationStruct customizationStruct, ref object State, DataObjectCache DataObjectCache)
 Загрузка объектов данных Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (ICSSoft.STORMNET.View dataObjectView, ChangeViewForTypeDelegate changeViewForTypeDelegate)
 Загрузка объектов данных по представлению Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (ICSSoft.STORMNET.View[] dataObjectViews, ChangeViewForTypeDelegate changeViewForTypeDelegate)
 Загрузка объектов данных по массиву представлений Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (LoadingCustomizationStruct[] customizationStructs, ChangeViewForTypeDelegate changeViewForTypeDelegate)
 Загрузка объектов данных по массиву структур Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (ref object State, DataObjectCache DataObjectCache)
 Загрузка объектов данных Подробнее...
 
virtual object[][] ReadFirstByExtConn (string Query, ref object State, int LoadingBufferSize, System.Data.IDbConnection Connection, System.Data.IDbTransaction Transaction)
 
virtual object[][] ReadFirst (string query, ref object state, int loadingBufferSize)
 Вычитка первой партии данных. Подробнее...
 
virtual object[][] ReadNextByExtConn (ref object State, int LoadingBufferSize)
 
virtual object[][] ReadNext (ref object state, int loadingBufferSize)
 Вычитка следующей порции данных Подробнее...
 
virtual int ExecuteNonQuery (string query)
 Выполнить запрос Подробнее...
 
virtual void GetLeftJoinExpression (string subTable, string subTableAlias, string parentAliasWithKey, string subTableKey, string subJoins, string baseOutline, out string FromPart, out string WherePart)
 получить LeftJoin выражение Подробнее...
 
virtual void GetInnerJoinExpression (string subTable, string subTableAlias, string parentAliasWithKey, string subTableKey, string subJoins, string baseOutline, out string FromPart, out string WherePart)
 получить InnerJoin выражение Подробнее...
 
virtual string GetJoinTableModifierExpression ()
 Вернуть модификатор для обращения к таблице (напр WITH (NOLOCK)) Можно перегрузить этот метод в сервисе данных-наследнике для возврата соответствующего своего модификатора. Базовый SQLDataService возвращает пустую строку. Подробнее...
 
virtual string GetINExpression (params string[] identifiers)
 Вернуть in выражение для where Подробнее...
 
virtual string GetIfNullExpression (params string[] identifiers)
 Вернуть ifnull выражение Подробнее...
 
virtual string PutIdentifierIntoBrackets (string identifier)
 Офромить идентификатор Подробнее...
 
virtual void CreateJoins (STORMDO.Business.StorageStructForView.PropSource source, string parentAlias, int index, System.Collections.ArrayList keysandtypes, string baseOutline, out int joinscount, out string FromPart, out string WherePart)
 создать join соединения Подробнее...
 
virtual void CreateJoins (STORMDO.Business.StorageStructForView.PropSource source, string parentAlias, int index, System.Collections.ArrayList keysandtypes, string baseOutline, out int joinscount, out string FromPart, out string WherePart, bool MustNewGenerate)
 создать join соединения Подробнее...
 
virtual string TranslateExpression (string expression, string namespacewithpoint, string exteranlnamewithpoint, out bool PointExistInSourceIdentifier)
 преобразовать выражение с учетом Подробнее...
 
virtual string GetConvertToTypeExpression (Type valType, string value)
 
virtual string GenerateSQLSelectByStorageStruct (STORMDO.Business.StorageStructForView storageStruct, bool addNotMainKeys, bool addMasterFieldsCustomizer, string AddingAdvansedField, int AddingKeysCount, bool SelectTypesIds)
 Получение SQL запроса в следующем формате SELECT atr1,atr2, ... atr3, Key1,Key2, ... key3 FROM fromjoins Подробнее...
 
virtual string GenerateSQLSelectByStorageStruct (STORMDO.Business.StorageStructForView storageStruct, bool addNotMainKeys, bool addMasterFieldsCustomizer, string AddingAdvansedField, int AddingKeysCount, bool SelectTypesIds, bool MustNewGenerate, bool MustDopSelect)
 
virtual string ConvertSimpleValueToQueryValueString (object value)
 Конвертация константных значений в строки запроса. Подробнее...
 
virtual string ConvertValueToQueryValueString (object value)
 конвертация значений в строки запроса Подробнее...
 
virtual string ConvertValueToQueryValueString (DataObject dataobject, string propname)
 Преобразование значение свойства в строку для запроса Подробнее...
 
virtual string LimitFunction2SQLWhere (STORMFunction LimitFunction, STORMDO.Business.StorageStructForView[] StorageStruct, string[] asnameprop, bool MustNewGenerate)
 Преобразование функции Подробнее...
 
virtual string LimitFunction2SQLWhere (STORMFunction LimitFunction)
 Преобразование функции Подробнее...
 
virtual ObjectStringDataView[] LoadStringedObjectView (char separator, LoadingCustomizationStruct customizationStruct)
 Загрузка без создания объектов Подробнее...
 
virtual ObjectStringDataView[] LoadStringedObjectView (char separator, LoadingCustomizationStruct customizationStruct, ref object State)
 Загрузка без создания объектов Подробнее...
 
virtual object[][] LoadRawValues (LoadingCustomizationStruct customizationStruct)
 Загрузка без создания объектов Подробнее...
 
virtual ObjectStringDataView[] LoadValues (char separator, LoadingCustomizationStruct customizationStruct)
 
virtual ObjectStringDataView[] LoadStringedObjectView (ref object state)
 
void CompleteLoadStringedObjectView (ref object state)
 Корректное завершения операции порционного чтения LoadStringedObjectView. Подробнее...
 
virtual void UpdateObject (ref ICSSoft.STORMNET.DataObject dobject, DataObjectCache DataObjectCache)
 Обновление объекта данных Подробнее...
 
virtual void UpdateObject (ref ICSSoft.STORMNET.DataObject dobject, DataObjectCache DataObjectCache, bool AlwaysThrowException)
 Обновление объекта данных Подробнее...
 
virtual void UpdateObject (ICSSoft.STORMNET.DataObject dobject)
 Обновление объекта данных Подробнее...
 
virtual void UpdateObject (ICSSoft.STORMNET.DataObject dobject, DataObjectCache DataObjectCache)
 Обновление объекта данных Подробнее...
 
virtual void UpdateObject (ICSSoft.STORMNET.DataObject dobject, bool AlwaysThrowException)
 Обновление объекта данных Подробнее...
 
virtual void GenerateQueriesForUpdateObjects (StringCollection deleteQueries, StringCollection deleteTables, StringCollection updateQueries, StringCollection updateTables, StringCollection insertQueries, StringCollection insertTables, SortedList tableOperations, StringCollection queryOrder, bool checkLoadedProps, System.Collections.ArrayList processingObjects, DataObjectCache dataObjectCache, params ICSSoft.STORMNET.DataObject[] dobjects)
 Генерация запросов для изменения объектов. Подробнее...
 
virtual void GenerateQueriesForUpdateObjects (StringCollection deleteQueries, StringCollection deleteTables, StringCollection updateQueries, StringCollection updateTables, StringCollection insertQueries, StringCollection insertTables, SortedList tableOperations, StringCollection queryOrder, bool checkLoadedProps, ArrayList processingObjects, DataObjectCache dataObjectCache, List< DataObject > auditObjects, params DataObject[] dobjects)
 Генерация запросов для изменения объектов (дополнительно возвращается список объектов, для которых необходимо создание записей аудита). Подробнее...
 
virtual void UpdateObjectsOrdered (ref DataObject[] objects, bool alwaysThrowException=true)
 Обновить объекты данных в указанном порядке Подробнее...
 
virtual void UpdateObjectsByExtConn (ref DataObject[] objects, DataObjectCache dataObjectCache, bool alwaysThrowException, IDbConnection connection, IDbTransaction transaction)
 Обновить хранилище по объектам (есть параметр, указывающий, всегда ли необходимо взводить ошибку и откатывать транзакцию при неудачном запросе в базу данных). Если он true, всегда взводится ошибка. Иначе, выполнение продолжается. Однако, при этом есть опасность преждевременного окончания транзакции, с переходом для остальных запросов режима транзакционности в autocommit. Проявлением проблемы являются ошибки навроде: The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION TODO: Объединить код с UpdateObjects. Подробнее...
 
virtual void LoadObject (ICSSoft.STORMNET.DataObject dobject)
 Загрузка одного объекта данных Подробнее...
 
virtual void LoadObject (string dataObjectViewName, ICSSoft.STORMNET.DataObject dobject)
 Загрузка одного объекта данных Подробнее...
 
virtual void LoadObject (ICSSoft.STORMNET.View dataObjectView, ICSSoft.STORMNET.DataObject dobject)
 Загрузка одного объекта данных Подробнее...
 
virtual void LoadObject (ICSSoft.STORMNET.DataObject dobject, bool ClearDataObject, bool CheckExistingObject)
 Загрузка одного объекта данных Подробнее...
 
virtual void LoadObject (string dataObjectViewName, ICSSoft.STORMNET.DataObject dobject, bool ClearDataObject, bool CheckExistingObject)
 Загрузка одного объекта данных Подробнее...
 
virtual void LoadObject (ICSSoft.STORMNET.View dataObjectView, ICSSoft.STORMNET.DataObject dobject, bool ClearDataObject, bool CheckExistingObject)
 Загрузка одного объекта данных Подробнее...
 
virtual void LoadObjects (ICSSoft.STORMNET.DataObject[] dataobjects, ICSSoft.STORMNET.View dataObjectView, bool ClearDataobject)
 Загрузка объектов данных Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (LoadingCustomizationStruct customizationStruct)
 Загрузка объектов данных Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (LoadingCustomizationStruct customizationStruct, ref object State)
 Загрузка объектов данных Подробнее...
 
virtual ICSSoft.STORMNET.DataObject[] LoadObjects (ref object State)
 Загрузка объектов данных Подробнее...
 
virtual void UpdateObject (ref ICSSoft.STORMNET.DataObject dobject)
 Обновление объекта данных Подробнее...
 
virtual void UpdateObject (ref ICSSoft.STORMNET.DataObject dobject, bool AlwaysThrowException)
 Обновление объекта данных Подробнее...
 
virtual object Clone ()
 Создание копии экземпляра сервиса данных. Подробнее...
 
bool IsExpressionContainAttrubuteCheckOnly (string expression)
 Выражение DataServiceExpression содержит только метаинформацию для контроля прав на атрибуты. Подробнее...
 
virtual void UpdateObjects (ref DataObject[] objects, DataObjectCache DataObjectCache, bool AlwaysThrowException)
 Обновить хранилище по объектам (есть параметр, указывающий, всегда ли необходимо взводить ошибку и откатывать транзакцию при неудачном запросе в базу данных). Если он true, всегда взводится ошибка. Иначе, выполнение продолжается. Однако, при этом есть опасность преждевременного окончания транзакции, с переходом для остальных запросов режима транзакционности в autocommit. Проявлением проблемы являются ошибки навроде: The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION Подробнее...
 
virtual void UpdateObjects (ref DataObject[] objects, DataObjectCache DataObjectCache)
 Обновить хранилище по объектам. При ошибках делается попытка возобновления транзакции с другого запроса, т.к. предполагается, что запросы должны быть выполнены в другом порядке. Подробнее...
 
virtual void UpdateObjects (ref DataObject[] objects)
 Обновить хранилище по объектам. Подробнее...
 
virtual void UpdateObjects (ref DataObject[] objects, bool AlwaysThrowException)
 Обновить хранилище по объектам. Подробнее...
 
- Открытые члены унаследованные от ICSSoft.STORMNET.Business.IDataService
void UpdateObjects (ref ICSSoft.STORMNET.DataObject[] objects, DataObjectCache DataObjectCache)
 
void UpdateObjects (ref ICSSoft.STORMNET.DataObject[] objects, DataObjectCache DataObjectCache, bool AlwaysThrowException)
 
void UpdateObjects (ref ICSSoft.STORMNET.DataObject[] objects)
 
void UpdateObjects (ref ICSSoft.STORMNET.DataObject[] objects, bool AlwaysThrowException)
 

Статические открытые данные

static ChangeCustomizationStringDelegate ChangeCustomizationString = null
 Делегат для смены строки соединения Подробнее...
 

Защищенные типы

enum  OperationType : short { None = 0, Update = 1, Delete = 2, Insert = 4 }
 The operation type. Подробнее...
 

Защищенные члены

void prv_AddMasterObjectsToCache (DataObject dataobject, System.Collections.ArrayList arrl, DataObjectCache DataObjectCache)
 
virtual void SecondLoadObject (View dataObjectView, DataObject dataObject, bool checkExistingObject, DataObjectCache dataObjectCache)
 Метод для дочитки объекта данных. Загруженные ранее свойства не затираются, изменённые свойства не затираются. Подменяются поштучно свойства копии данных. TODO: дописать тесты, проверить и сделать публичным Подробнее...
 
virtual void PrvSecondLoadObject (View dataObjectView, DataObject dataObject, bool checkExistingObject, DataObjectCache dataObjectCache, DataObject dataObjectFromDB)
 Метод для дочитки объекта данных. Загруженные ранее свойства не затираются, изменённые свойства не затираются. Подменяются поштучно свойства копии данных. Подробнее...
 
virtual void GetAlteredPropsWithValues (ICSSoft.STORMNET.DataObject dobject, bool CheckLoadedProps, out ICSSoft.STORMNET.Collections.CaseSensivityStringDictionary propsWithValues, out ICSSoft.STORMNET.DataObject[] detailObjects, out ICSSoft.STORMNET.DataObject[] masterObjects, bool ReturnPropStorageNames)
 Возвращает измененные данные со значениями Подробнее...
 
virtual void GenerateAuditForAggregators (ArrayList processingObjects, DataObjectCache dataObjectCache, ref List< DataObject > auditObjects, IDbTransaction transaction=null)
 Сгенерировать объекты для учета аудита агрегаторов обновляемых объектов, если они обновляются отдельно от агрегатора. Подробнее...
 
virtual void CustomizeCommand (System.Data.IDbCommand cmd)
 
virtual Exception RunCommands (StringCollection queries, StringCollection tables, string table, System.Data.IDbCommand command, object businessID, bool AlwaysThrowException)
 
OperationType Minus (OperationType ops, OperationType value)
 
virtual System.Data.IDbTransaction CreateTransaction (System.Data.IDbConnection connection)
 

Свойства

StorageTypeEnum StorageType [get, set]
 Тип хранилища Подробнее...
 
string CustomizationString [get, set]
 Настроичная строка (строка соединения) Подробнее...
 
bool DoNotChangeCustomizationString [get, set]
 Не менять строку соединения общим делегатом ChangeCustomizationString Подробнее...
 
System.Collections.SortedList Types [get]
 Gets the types. Подробнее...
 
ISecurityManager SecurityManager [get, protected set]
 Сервис подсистемы полномочий, который применяется для проверки прав доступа. Рекомендуется устанавливать его через конструктор, в противном случае используется настройка в Unity. Подробнее...
 
IAuditService AuditService [get]
 
ICSSoft.STORMNET.TypeUsage TypeUsage [get, set]
 
int CommandTimeout [get, set]
 IDbCommand.CommandTimeout кроме установки этого таймаута не забудьте установить флаг UseCommandTimeout Подробнее...
 
bool UseCommandTimeout [get, set]
 Использовать ли атрибут CommandTimeout (если задан через конфиг, то будет true) по-умолчанию false Подробнее...
 
- Свойства унаследованные от ICSSoft.STORMNET.Business.IDataService
string CustomizationString [get, set]
 Строка настройки. Подробнее...
 
ICSSoft.STORMNET.TypeUsage TypeUsage [get, set]
 Структура определения ICSSoft.STORMNET.TypeUsage. Подробнее...
 
ISecurityManager SecurityManager [get]
 Менеджер полномочий. Подробнее...
 
IAuditService AuditService [get]
 Текущий сервис аудита. Подробнее...
 

События

OnGenerateSQLSelectEventHandler OnGenerateSQLSelect
 Событие перед генерацией запроса Подробнее...
 
AfterGenerateSQLSelectQueryEventHandler AfterGenerateSQLSelectQuery
 После генерации, но до вычитки Подробнее...
 
static AfterGenerateSQLSelectQueryEventHandler AfterGenerateSQLSelectQueryStatic
 После генерации, но до вычитки, статический эвент (выполняется после обработки в AfterGenerateSQLSelectQuery) Подробнее...
 
BeforeUpdateObjectsEventHandler BeforeUpdateObjects
 Перед выполнением обновления объектов в базе. После отработки бизнес-серверов. Подробнее...
 
AfterUpdateObjectsEventHandler AfterUpdateObjects
 После выполнения обновления объектов в базе. Подробнее...
 
OnCreateCommandEventHandler OnCreateCommand
 

Подробное описание

Data service for SQL storage.

Перечисления

The operation type.

Конструктор(ы)

ICSSoft.STORMNET.Business.SQLDataService.SQLDataService ( )
inline

Construct data service with default settings.

ICSSoft.STORMNET.Business.SQLDataService.SQLDataService ( ISecurityManager  securityManager)
inline

Initializes a new instance of the SQLDataService class with specified security manager.

Аргументы
securityManagerThe security manager instance.
ICSSoft.STORMNET.Business.SQLDataService.SQLDataService ( ISecurityManager  securityManager,
IAuditService  auditService 
)
inline

Initializes a new instance of the SQLDataService class with specified security manager and audit service.

Аргументы
securityManagerThe security manager instance.
auditServiceThe audit service.

Методы

virtual object ICSSoft.STORMNET.Business.SQLDataService.Clone ( )
inlinevirtual

Создание копии экземпляра сервиса данных.

Возвращает
Копии экземпляра сервиса данных.

Переопределяется в ICSSoft.STORMNET.Business.OracleDataService, ICSSoft.STORMNET.Business.ODBCAccessDataService и ICSSoft.STORMNET.Business.ODBCMySQLDataService.

void ICSSoft.STORMNET.Business.SQLDataService.CompleteLoadStringedObjectView ( ref object  state)
inline

Корректное завершения операции порционного чтения LoadStringedObjectView.

Аргументы
stateПараметр состояния загрузки (массив объектов).

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual string ICSSoft.STORMNET.Business.SQLDataService.ConvertSimpleValueToQueryValueString ( object  value)
inlinevirtual

Конвертация константных значений в строки запроса.

Аргументы
valueЗначение, которое требуется преобразовать в соответствующую в БД строку.
Возвращает
Полученная строка.

Переопределяется в ICSSoft.STORMNET.Business.PostgresDataService, ICSSoft.STORMNET.Business.OracleDataService, ICSSoft.STORMNET.Business.MSSQLDataService, ICSSoft.STORMNET.Business.ODBCAccessDataService и ICSSoft.STORMNET.Business.ODBCMySQLDataService.

virtual string ICSSoft.STORMNET.Business.SQLDataService.ConvertValueToQueryValueString ( object  value)
inlinevirtual

конвертация значений в строки запроса

Аргументы
value
Возвращает
virtual string ICSSoft.STORMNET.Business.SQLDataService.ConvertValueToQueryValueString ( DataObject  dataobject,
string  propname 
)
inlinevirtual

Преобразование значение свойства в строку для запроса

Аргументы
dataobject
propname
Возвращает
virtual void ICSSoft.STORMNET.Business.SQLDataService.CreateJoins ( STORMDO.Business.StorageStructForView.PropSource  source,
string  parentAlias,
int  index,
System.Collections.ArrayList  keysandtypes,
string  baseOutline,
out int  joinscount,
out string  FromPart,
out string  WherePart 
)
inlinevirtual

создать join соединения

Аргументы
sourceисточник с которого формируется соединение
parentAliasвышестоящий алиас
indexиндекс источника
keysandtypesключи и типы
baseOutlineсмещение в запросе
joinscountколичество соединений
Возвращает
virtual void ICSSoft.STORMNET.Business.SQLDataService.CreateJoins ( STORMDO.Business.StorageStructForView.PropSource  source,
string  parentAlias,
int  index,
System.Collections.ArrayList  keysandtypes,
string  baseOutline,
out int  joinscount,
out string  FromPart,
out string  WherePart,
bool  MustNewGenerate 
)
inlinevirtual

создать join соединения

Аргументы
sourceисточник с которого формируется соединение
parentAliasвышестоящий алиас
indexиндекс источника
keysandtypesключи и типы
baseOutlineсмещение в запросе
joinscountколичество соединений
Возвращает
virtual int ICSSoft.STORMNET.Business.SQLDataService.ExecuteNonQuery ( string  query)
inlinevirtual

Выполнить запрос

Аргументы
querySQL запрос
Возвращает
количество задетых строк
virtual string ICSSoft.STORMNET.Business.SQLDataService.FunctionToSql ( SQLWhereLanguageDef  sqlLangDef,
Function  function,
delegateConvertValueToQueryValueString  convertValue,
delegatePutIdentifierToBrackets  convertIdentifier 
)
inlinevirtual

Преобразовать значение в SQL строку

Аргументы
functionФункция
convertValueделегат для преобразования констант
convertIdentifierделегат для преобразования идентификаторов
Возвращает

Замещает ICSSoft.STORMNET.Business.IDataService.

Переопределяется в ICSSoft.STORMNET.Business.PostgresDataService, ICSSoft.STORMNET.Business.MSSQLDataService, ICSSoft.STORMNET.Business.OracleDataService, ICSSoft.STORMNET.Business.ODBCDataService и ICSSoft.STORMNET.Business.ODBCAccessDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.GenerateAuditForAggregators ( ArrayList  processingObjects,
DataObjectCache  dataObjectCache,
ref List< DataObject >  auditObjects,
IDbTransaction  transaction = null 
)
inlineprotectedvirtual

Сгенерировать объекты для учета аудита агрегаторов обновляемых объектов, если они обновляются отдельно от агрегатора.

Аргументы
processingObjectsОбъекты, которые необходимо обработать.
dataObjectCacheКэш объектов данных.
auditObjectsСписок объектов, для которых нужно создать записи аудита. Сюда записывается результат работы метода.
transactionТранзакция, в которой необходимо производить чтение (необязательный параметр).
virtual void ICSSoft.STORMNET.Business.SQLDataService.GenerateQueriesForUpdateObjects ( StringCollection  deleteQueries,
StringCollection  deleteTables,
StringCollection  updateQueries,
StringCollection  updateTables,
StringCollection  insertQueries,
StringCollection  insertTables,
SortedList  tableOperations,
StringCollection  queryOrder,
bool  checkLoadedProps,
System.Collections.ArrayList  processingObjects,
DataObjectCache  dataObjectCache,
params ICSSoft.STORMNET.DataObject[]  dobjects 
)
inlinevirtual

Генерация запросов для изменения объектов.

Аргументы
deleteQueriesЗапросы для удаление
deleteTablesThe Delete Tables.
updateQueriesЗапросы для изменения
updateTablesThe Update Tables.
insertQueriesЗапросы для добавления
insertTablesThe Insert Tables.
tableOperationsThe Table Operations.
queryOrderThe Query Order.
checkLoadedPropsПроверять ли загруженность свойств
processingObjectsThe processing Objects.
dataObjectCacheThe Data Object Cache.
dobjectsДля чего генерим запросы
virtual void ICSSoft.STORMNET.Business.SQLDataService.GenerateQueriesForUpdateObjects ( StringCollection  deleteQueries,
StringCollection  deleteTables,
StringCollection  updateQueries,
StringCollection  updateTables,
StringCollection  insertQueries,
StringCollection  insertTables,
SortedList  tableOperations,
StringCollection  queryOrder,
bool  checkLoadedProps,
ArrayList  processingObjects,
DataObjectCache  dataObjectCache,
List< DataObject >  auditObjects,
params DataObject[]  dobjects 
)
inlinevirtual

Генерация запросов для изменения объектов (дополнительно возвращается список объектов, для которых необходимо создание записей аудита).

Аргументы
deleteQueriesЗапросы для удаление (выходной параметр).
deleteTablesТаблицы, из которых будет проведено удаление данных (выходной параметр).
updateQueriesСгенерированные запросы для изменения (выходной параметр).
updateTablesТаблицы, в которых будет проведено изменение данных (выходной параметр).
insertQueriesСгенерированные запросы для добавления (выходной параметр).
insertTablesТаблицы, в которые будет проведена вставка данных (выходной параметр).
tableOperationsОперации, которые будут произведены над таблицами (выходной параметр).
queryOrderПорядок исполнения генерируемых запросов, задаваемый именами таблиц (выходной параметр).
checkLoadedPropsПроверять ли загруженность свойств.
processingObjectsТекущие обрабатываемые объекты (то есть объекты, которые данный сервис данных планирует подтвердить в БД в текущей транзакции). Выходной параметр.
dataObjectCacheКэш объектов данных.
auditObjectsСписок объектов, которые необходимо записать в аудит (выходной параметр). Заполняется в том случае, когда передан не null и текущий сервис аудита включен.
dobjectsОбъекты, для которых генерируются запросы.
virtual string ICSSoft.STORMNET.Business.SQLDataService.GenerateSQLSelect ( LoadingCustomizationStruct  customizationStruct,
bool  ForReadValues,
out STORMDO.Business.StorageStructForView[]  StorageStruct,
bool  Optimized 
)
inlinevirtual

получить запрос на вычитку данных

Аргументы
customizationStructнастройка выборки
StorageStructвозвращается соответствующая структура выборки
Возвращает
запрос
virtual string ICSSoft.STORMNET.Business.SQLDataService.GenerateSQLSelect ( LoadingCustomizationStruct  customizationStruct,
bool  Optimized 
)
inlinevirtual

получить запрос на вычитку данных

Аргументы
customizationStructнастройка выборки
Возвращает
запрос

Переопределяется в ICSSoft.STORMNET.Business.PostgresDataService.

virtual string ICSSoft.STORMNET.Business.SQLDataService.GenerateSQLSelectByStorageStruct ( STORMDO.Business.StorageStructForView  storageStruct,
bool  addNotMainKeys,
bool  addMasterFieldsCustomizer,
string  AddingAdvansedField,
int  AddingKeysCount,
bool  SelectTypesIds 
)
inlinevirtual

Получение SQL запроса в следующем формате SELECT atr1,atr2, ... atr3, Key1,Key2, ... key3 FROM fromjoins

Аргументы
storageStructструктура хранилища
AddingAdvansedFieldдовленные дополнительные свойства
AddingKeysCountдобавленниые ключи
addMasterFieldsCustomizer
addNotMainKeys
SelectTypesIds
Возвращает
virtual void ICSSoft.STORMNET.Business.SQLDataService.GetAlteredPropsWithValues ( ICSSoft.STORMNET.DataObject  dobject,
bool  CheckLoadedProps,
out ICSSoft.STORMNET.Collections.CaseSensivityStringDictionary  propsWithValues,
out ICSSoft.STORMNET.DataObject[]  detailObjects,
out ICSSoft.STORMNET.DataObject[]  masterObjects,
bool  ReturnPropStorageNames 
)
inlineprotectedvirtual

Возвращает измененные данные со значениями

Аргументы
dobjectу кого проверяем
CheckLoadedPropsпроверять ли загруженность измененных свойств
propsWithValuesпары свойство-значение
detailObjectsвычисленные измененные объекты
ReturnPropStorageNamesвозвращать ли не сами свойства а их хранилища
abstract System.Data.IDbConnection ICSSoft.STORMNET.Business.SQLDataService.GetConnection ( )
pure virtual

Вернуть объект System.Data.IDbConnection

Возвращает
Коннекция к БД

Замещается в ICSSoft.STORMNET.Business.PostgresDataService, ICSSoft.STORMNET.Business.OracleDataService, ICSSoft.STORMNET.Business.MSSQLDataService и ICSSoft.STORMNET.Business.ODBCDataService.

virtual string ICSSoft.STORMNET.Business.SQLDataService.GetIfNullExpression ( params string[]  identifiers)
inlinevirtual

Вернуть ifnull выражение

Аргументы
identifiersидентифткаторы
Возвращает

Переопределяется в ICSSoft.STORMNET.Business.PostgresDataService, ICSSoft.STORMNET.Business.OracleDataService, ICSSoft.STORMNET.Business.MSSQLDataService, ICSSoft.STORMNET.Business.ODBCDataService и ICSSoft.STORMNET.Business.ODBCAccessDataService.

virtual string ICSSoft.STORMNET.Business.SQLDataService.GetINExpression ( params string[]  identifiers)
inlinevirtual

Вернуть in выражение для where

Аргументы
identifiersидентифткаторы
Возвращает
virtual void ICSSoft.STORMNET.Business.SQLDataService.GetInnerJoinExpression ( string  subTable,
string  subTableAlias,
string  parentAliasWithKey,
string  subTableKey,
string  subJoins,
string  baseOutline,
out string  FromPart,
out string  WherePart 
)
inlinevirtual

получить InnerJoin выражение

Аргументы
subTable
subTableAlias
parentAliasWithKey
subTableKey
subJoins
baseOutline
FromPart
WherePart
Guid ICSSoft.STORMNET.Business.SQLDataService.GetInstanceId ( )
inline

Ключ инстанции сервиса.

Возвращает
Instance key.

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual string ICSSoft.STORMNET.Business.SQLDataService.GetJoinTableModifierExpression ( )
inlinevirtual

Вернуть модификатор для обращения к таблице (напр WITH (NOLOCK)) Можно перегрузить этот метод в сервисе данных-наследнике для возврата соответствующего своего модификатора. Базовый SQLDataService возвращает пустую строку.

Возвращает
""

Переопределяется в ICSSoft.STORMNET.Business.DRDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.GetLeftJoinExpression ( string  subTable,
string  subTableAlias,
string  parentAliasWithKey,
string  subTableKey,
string  subJoins,
string  baseOutline,
out string  FromPart,
out string  WherePart 
)
inlinevirtual

получить LeftJoin выражение

Аргументы
subTableимя таблицы
subTableAliasпсевдоним таблицы
parentAliasWithKey
subTableKey
subJoins
baseOutline
Возвращает
int ICSSoft.STORMNET.Business.SQLDataService.GetObjectIndex ( LoadingCustomizationStruct  lcs,
FunctionalLanguage.Function  limitFunction 
)
inline

Возвращает индекс первого объекта, встретившегося в массиве, при загрузке по указанному lcs. Объекты задаются через lf.

Аргументы
lcsМассив, в котором ищем.
limitFunctionЧто собственно ищем.
Возвращает
Индекс первого элемента, если он был найден. Иначе -1.
int [] ICSSoft.STORMNET.Business.SQLDataService.GetObjectIndexes ( LoadingCustomizationStruct  lcs,
FunctionalLanguage.Function  limitFunction 
)
inline

Возвращает индексы объектов, встретившихся в массиве, при загрузке по указанному lcs. Объекты задаются через lf.

Аргументы
lcsМассив, в котором ищем.
limitFunctionФункция ограничения, определяющая искомые объекты.
Возвращает
Массив индексов найденных объектов. Не возвращает null.
virtual IDictionary<int, string> ICSSoft.STORMNET.Business.SQLDataService.GetObjectIndexesWithPks ( LoadingCustomizationStruct  lcs,
FunctionalLanguage.Function  limitFunction,
int?  maxResults = null 
)
inlinevirtual

Возвращает индексы и ключи объектов, встретившихся в массиве, при загрузке по указанному lcs. Объекты задаются через lf.

Аргументы
lcsМассив, в котором ищем.
limitFunctionФункция ограничения, определяющая искомые объекты.
maxResultsМаксимальное число возвращаемых результатов. Этот параметр не соответствует
lcs.ReturnTop
, а устанавливает максимальное число искомых объектов, тогда как
lcs.ReturnTop
ограничивает число объектов, в которых проводится поиск. Если значение не определено (null), то возвращаются все найденные результаты.
Возвращает
Массив индексов найденных объектов начиная с 1. Не возвращает null.

Переопределяется в ICSSoft.STORMNET.Business.PostgresDataService.

virtual int ICSSoft.STORMNET.Business.SQLDataService.GetObjectsCount ( LoadingCustomizationStruct  customizationStruct)
inlinevirtual

Возвращает количество объектов удовлетворяющих запросу

Аргументы
customizationStructЧто выбираем
Возвращает

Замещает ICSSoft.STORMNET.Business.IDataService.

bool ICSSoft.STORMNET.Business.SQLDataService.IsExpressionContainAttrubuteCheckOnly ( string  expression)
inline

Выражение DataServiceExpression содержит только метаинформацию для контроля прав на атрибуты.

Аргументы
expressionВыражение DataServiceExpression
Возвращает
True/False
virtual string ICSSoft.STORMNET.Business.SQLDataService.LimitFunction2SQLWhere ( STORMFunction  LimitFunction,
STORMDO.Business.StorageStructForView[]  StorageStruct,
string[]  asnameprop,
bool  MustNewGenerate 
)
inlinevirtual

Преобразование функции

Аргументы
LimitFunction
Возвращает
virtual string ICSSoft.STORMNET.Business.SQLDataService.LimitFunction2SQLWhere ( STORMFunction  LimitFunction)
inlinevirtual

Преобразование функции

Аргументы
LimitFunction
Возвращает

Переопределяется в ICSSoft.STORMNET.Business.ODBCAccessDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( ICSSoft.STORMNET.DataObject  dobject,
bool  ClearDataObject,
bool  CheckExistingObject,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dobjectобъект данных, который требуется загрузить
ClearDataObjectочищать ли объект
CheckExistingObjectпроверять ли существование объекта в хранилище

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( string  dataObjectViewName,
ICSSoft.STORMNET.DataObject  dobject,
bool  ClearDataObject,
bool  CheckExistingObject,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dataObjectViewNameнаименование представления
dobjectбъект данных, который требуется загрузить
ClearDataObjectочищать ли объект
CheckExistingObjectпроверять ли существование объекта в хранилище

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( ICSSoft.STORMNET.View  dataObjectView,
ICSSoft.STORMNET.DataObject  dobject,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dataObjectViewпредставление объекта
dobjectобъект данных, который требуется загрузить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( ICSSoft.STORMNET.View  dataObjectView,
ICSSoft.STORMNET.DataObject  dobject,
bool  ClearDataObject,
bool  CheckExistingObject,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dataObjectViewпредставление
dobjectбъект данных, который требуется загрузить
ClearDataObjectочищать ли объект
CheckExistingObjectпроверять ли существование объекта в хранилище

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( string  dataObjectViewName,
ICSSoft.STORMNET.DataObject  dobject,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dataObjectViewNameимя представления объекта
dobjectобъект данных, который требуется загрузить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( ICSSoft.STORMNET.DataObject  dobject,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dobjectобъект данных, который требуется загрузить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( ICSSoft.STORMNET.DataObject  dobject)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dobjectобъект данных, который требуется загрузить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( string  dataObjectViewName,
ICSSoft.STORMNET.DataObject  dobject 
)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dataObjectViewNameимя представления объекта
dobjectобъект данных, который требуется загрузить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( ICSSoft.STORMNET.View  dataObjectView,
ICSSoft.STORMNET.DataObject  dobject 
)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dataObjectViewпредставление объекта
dobjectобъект данных, который требуется загрузить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( ICSSoft.STORMNET.DataObject  dobject,
bool  ClearDataObject,
bool  CheckExistingObject 
)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dobjectобъект данных, который требуется загрузить
ClearDataObjectочищать ли объект
CheckExistingObjectпроверять ли существование объекта в хранилище

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( string  dataObjectViewName,
ICSSoft.STORMNET.DataObject  dobject,
bool  ClearDataObject,
bool  CheckExistingObject 
)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dataObjectViewNameнаименование представления
dobjectбъект данных, который требуется загрузить
ClearDataObjectочищать ли объект
CheckExistingObjectпроверять ли существование объекта в хранилище

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObject ( ICSSoft.STORMNET.View  dataObjectView,
ICSSoft.STORMNET.DataObject  dobject,
bool  ClearDataObject,
bool  CheckExistingObject 
)
inlinevirtual

Загрузка одного объекта данных

Аргументы
dataObjectViewпредставление
dobjectбъект данных, который требуется загрузить
ClearDataObjectочищать ли объект
CheckExistingObjectпроверять ли существование объекта в хранилище

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObjectByExtConn ( View  dataObjectView,
DataObject  dobject,
bool  сlearDataObject,
bool  сheckExistingObject,
DataObjectCache  dataObjectCache,
IDbConnection  connection,
IDbTransaction  transaction 
)
inlinevirtual

Загрузка объекта с указанной коннекцией в рамках указанной транзакции.

Аргументы
dataObjectViewПредставление, по которому будет зачитываться объект.
dobjectОбъект, который будет дочитываться/зачитываться.
сlearDataObjectСледует ли при зачитке очистить поля существующего объекта данных.
сheckExistingObjectПроверить существовние встречающихся при зачитке объектов.
dataObjectCacheКэш объектов.
connectionКоннекция, через которую будет происходить зачитка.
transactionТранзакция, в рамках которой будет проходить зачитка.
virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( LoadingCustomizationStruct  customizationStruct,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Загрузка объектов данных

Аргументы
customizationStructнастроичная структура для выборкиLoadingCustomizationStruct
Возвращает

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( ICSSoft.STORMNET.DataObject[]  dataobjects,
ICSSoft.STORMNET.View  dataObjectView,
bool  ClearDataobject,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Загрузка объектов данных

Аргументы
dataobjectsисходные объекты
dataObjectViewпредставлене
ClearDataobjectочищать ли существующие

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( ICSSoft.STORMNET.View  dataObjectView)
inlinevirtual

Загрузка объектов данных по представлению

Аргументы
dataObjectViewпредставление

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( ICSSoft.STORMNET.View[]  dataObjectViews)
inlinevirtual

Загрузка объектов данных по массиву представлений

Аргументы
dataObjectViewsмассив представлений

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( LoadingCustomizationStruct[]  customizationStructs)
inlinevirtual

Загрузка объектов данных по массиву структур

Аргументы
customizationStructsмассив структур

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( LoadingCustomizationStruct  customizationStruct,
ref object  State,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Загрузка объектов данных

Аргументы
customizationStructнастроичная структура для выборкиLoadingCustomizationStruct
StateСостояние вычитки( для последующей дочитки )
Возвращает

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( ICSSoft.STORMNET.View  dataObjectView,
ChangeViewForTypeDelegate  changeViewForTypeDelegate 
)
inlinevirtual

Загрузка объектов данных по представлению

Аргументы
dataObjectViewпредставление
changeViewForTypeDelegateделегат

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( ICSSoft.STORMNET.View[]  dataObjectViews,
ChangeViewForTypeDelegate  changeViewForTypeDelegate 
)
inlinevirtual

Загрузка объектов данных по массиву представлений

Аргументы
dataObjectViewsмассив представлений
changeViewForTypeDelegateделегат

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( LoadingCustomizationStruct[]  customizationStructs,
ChangeViewForTypeDelegate  changeViewForTypeDelegate 
)
inlinevirtual

Загрузка объектов данных по массиву структур

Аргументы
customizationStructsмассив структур
changeViewForTypeDelegateделегат

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( ref object  State,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Загрузка объектов данных

Аргументы
StateСостояние вычитки( для последующей дочитки)
Возвращает

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( ICSSoft.STORMNET.DataObject[]  dataobjects,
ICSSoft.STORMNET.View  dataObjectView,
bool  ClearDataobject 
)
inlinevirtual

Загрузка объектов данных

Аргументы
dataobjectsисходные объекты
dataObjectViewпредставлене
ClearDataobjectочищать ли существующие

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( LoadingCustomizationStruct  customizationStruct)
inlinevirtual

Загрузка объектов данных

Аргументы
customizationStructнастроичная структура для выборкиLoadingCustomizationStruct
Возвращает
результат запроса

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( LoadingCustomizationStruct  customizationStruct,
ref object  State 
)
inlinevirtual

Загрузка объектов данных

Аргументы
customizationStructнастроичная структура для выборкиLoadingCustomizationStruct
StateСостояние вычитки( для последующей дочитки )
Возвращает

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ICSSoft.STORMNET.DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjects ( ref object  State)
inlinevirtual

Загрузка объектов данных

Аргументы
StateСостояние вычитки( для последующей дочитки)
Возвращает

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual DataObject [] ICSSoft.STORMNET.Business.SQLDataService.LoadObjectsByExtConn ( LoadingCustomizationStruct  customizationStruct,
ref object  state,
DataObjectCache  dataObjectCache,
IDbConnection  connection,
IDbTransaction  transaction 
)
inlinevirtual

Загрузка объектов с использованием указанной коннекции и транзакции.

Аргументы
customizationStructСтруктура, определяющая, что и как грузить.
state
dataObjectCacheКэш объектов для зачитки.
connectionКоннекция, через которую будут выполнена зачитска.
transactionТранзакция, в рамках которой будет выполнена зачитка.
Возвращает
Загруженные данные.
virtual object [][] ICSSoft.STORMNET.Business.SQLDataService.LoadRawValues ( LoadingCustomizationStruct  customizationStruct)
inlinevirtual

Загрузка без создания объектов

Аргументы
customizationStruct
Возвращает
virtual ObjectStringDataView [] ICSSoft.STORMNET.Business.SQLDataService.LoadStringedObjectView ( char  separator,
LoadingCustomizationStruct  customizationStruct 
)
inlinevirtual

Загрузка без создания объектов

Аргументы
separatorразделитель в строках
customizationStructнастроичная структура для выборкиLoadingCustomizationStruct
Возвращает
массив структур ObjectStringDataView

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ObjectStringDataView [] ICSSoft.STORMNET.Business.SQLDataService.LoadStringedObjectView ( char  separator,
LoadingCustomizationStruct  customizationStruct,
ref object  State 
)
inlinevirtual

Загрузка без создания объектов

Аргументы
separatorразделитель в строках
customizationStruct
State
Возвращает

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual ObjectStringDataView [] ICSSoft.STORMNET.Business.SQLDataService.LoadStringedObjectView ( ref object  state)
inlinevirtual
virtual void ICSSoft.STORMNET.Business.SQLDataService.PrvSecondLoadObject ( View  dataObjectView,
DataObject  dataObject,
bool  checkExistingObject,
DataObjectCache  dataObjectCache,
DataObject  dataObjectFromDB 
)
inlineprotectedvirtual

Метод для дочитки объекта данных. Загруженные ранее свойства не затираются, изменённые свойства не затираются. Подменяются поштучно свойства копии данных.

Аргументы
dataObjectViewпредставление
dataObjectбъект данных, который требуется загрузить
checkExistingObjectпроверять ли существование объекта в хранилище
dataObjectCache
dataObjectFromDB
virtual string ICSSoft.STORMNET.Business.SQLDataService.PutIdentifierIntoBrackets ( string  identifier)
inlinevirtual

Офромить идентификатор

Аргументы
identifierидентификатор
Возвращает
оформленный идентификатор(например в кавычках)

Переопределяется в ICSSoft.STORMNET.Business.PostgresDataService, ICSSoft.STORMNET.Business.OracleDataService, ICSSoft.STORMNET.Business.ODBCAccessDataService и ICSSoft.STORMNET.Business.ODBCMySQLDataService.

virtual object [][] ICSSoft.STORMNET.Business.SQLDataService.ReadFirst ( string  query,
ref object  state,
int  loadingBufferSize 
)
inlinevirtual

Вычитка первой партии данных.

Аргументы
query
state
loadingBufferSize
Возвращает

Переопределяется в ICSSoft.STORMNET.Business.PostgresDataService и ICSSoft.STORMNET.Business.OracleDataService.

virtual object [][] ICSSoft.STORMNET.Business.SQLDataService.ReadNext ( ref object  state,
int  loadingBufferSize 
)
inlinevirtual

Вычитка следующей порции данных

Аргументы
state
loadingBufferSize
Возвращает
virtual void ICSSoft.STORMNET.Business.SQLDataService.SecondLoadObject ( View  dataObjectView,
DataObject  dataObject,
bool  checkExistingObject,
DataObjectCache  dataObjectCache 
)
inlineprotectedvirtual

Метод для дочитки объекта данных. Загруженные ранее свойства не затираются, изменённые свойства не затираются. Подменяются поштучно свойства копии данных. TODO: дописать тесты, проверить и сделать публичным

Аргументы
dataObjectViewпредставление
dataObjectбъект данных, который требуется загрузить
checkExistingObjectпроверять ли существование объекта в хранилище
dataObjectCache
virtual string ICSSoft.STORMNET.Business.SQLDataService.TranslateExpression ( string  expression,
string  namespacewithpoint,
string  exteranlnamewithpoint,
out bool  PointExistInSourceIdentifier 
)
inlinevirtual

преобразовать выражение с учетом

Аргументы
expression
namespacewithpoint
Возвращает
virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObject ( ref ICSSoft.STORMNET.DataObject  dobject,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Обновление объекта данных

Аргументы
dobjectобъект данных, который требуется обновить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObject ( ref ICSSoft.STORMNET.DataObject  dobject,
DataObjectCache  DataObjectCache,
bool  AlwaysThrowException 
)
inlinevirtual

Обновление объекта данных

Аргументы
dobjectобъект данных, который требуется обновить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObject ( ICSSoft.STORMNET.DataObject  dobject)
inlinevirtual

Обновление объекта данных

Аргументы
dobjectобъект данных, который требуется обновить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObject ( ICSSoft.STORMNET.DataObject  dobject,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Обновление объекта данных

Аргументы
dobjectобъект данных, который требуется обновить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObject ( ICSSoft.STORMNET.DataObject  dobject,
bool  AlwaysThrowException 
)
inlinevirtual

Обновление объекта данных

Аргументы
dobjectобъект данных, который требуется обновить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObject ( ref ICSSoft.STORMNET.DataObject  dobject)
inlinevirtual

Обновление объекта данных

Аргументы
dobjectобъект данных, который требуется обновить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObject ( ref ICSSoft.STORMNET.DataObject  dobject,
bool  AlwaysThrowException 
)
inlinevirtual

Обновление объекта данных

Аргументы
dobjectобъект данных, который требуется обновить

Замещает ICSSoft.STORMNET.Business.IDataService.

virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObjects ( ref DataObject[]  objects,
DataObjectCache  DataObjectCache,
bool  AlwaysThrowException 
)
inlinevirtual

Обновить хранилище по объектам (есть параметр, указывающий, всегда ли необходимо взводить ошибку и откатывать транзакцию при неудачном запросе в базу данных). Если он true, всегда взводится ошибка. Иначе, выполнение продолжается. Однако, при этом есть опасность преждевременного окончания транзакции, с переходом для остальных запросов режима транзакционности в autocommit. Проявлением проблемы являются ошибки навроде: The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION

Аргументы
objectsОбъекты для обновления.
DataObjectCacheКэш объектов данных.
AlwaysThrowExceptionЕсли произошла ошибка в базе данных, не пытаться выполнять других запросов, сразу взводить ошибку и откатывать транзакцию.
virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObjects ( ref DataObject[]  objects,
DataObjectCache  DataObjectCache 
)
inlinevirtual

Обновить хранилище по объектам. При ошибках делается попытка возобновления транзакции с другого запроса, т.к. предполагается, что запросы должны быть выполнены в другом порядке.

Аргументы
objectsОбъекты данных для обновления.
DataObjectCacheКэш объектов данных.
virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObjects ( ref DataObject[]  objects)
inlinevirtual

Обновить хранилище по объектам.

Аргументы
objectsОбъекты данных для обновления.
virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObjects ( ref DataObject[]  objects,
bool  AlwaysThrowException 
)
inlinevirtual

Обновить хранилище по объектам.

Аргументы
objectsОбъекты данных для обновления.
AlwaysThrowExceptionЕсли произошла ошибка в базе данных, не пытаться выполнять других запросов, сразу взводить ошибку и откатывать транзакцию.
virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObjectsByExtConn ( ref DataObject[]  objects,
DataObjectCache  dataObjectCache,
bool  alwaysThrowException,
IDbConnection  connection,
IDbTransaction  transaction 
)
inlinevirtual

Обновить хранилище по объектам (есть параметр, указывающий, всегда ли необходимо взводить ошибку и откатывать транзакцию при неудачном запросе в базу данных). Если он true, всегда взводится ошибка. Иначе, выполнение продолжается. Однако, при этом есть опасность преждевременного окончания транзакции, с переходом для остальных запросов режима транзакционности в autocommit. Проявлением проблемы являются ошибки навроде: The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION TODO: Объединить код с UpdateObjects.

Аргументы
objectsОбъекты для обновления.
dataObjectCacheКеш объектов.
alwaysThrowExceptionЕсли произошла ошибка в базе данных, не пытаться выполнять других запросов, сразу взводить ошибку и откатывать транзакцию.
connectionКоннекция (не забудьте закрыть).
transactionТранзакция (не забудьте завершить).
virtual void ICSSoft.STORMNET.Business.SQLDataService.UpdateObjectsOrdered ( ref DataObject[]  objects,
bool  alwaysThrowException = true 
)
inlinevirtual

Обновить объекты данных в указанном порядке

Аргументы
objectsThe objects.
alwaysThrowExceptionЕсли произошла ошибка в базе данных, не пытаться выполнять других запросов, сразу взводить ошибку и откатывать транзакцию. По умолчанию true;

Данные класса

ChangeCustomizationStringDelegate ICSSoft.STORMNET.Business.SQLDataService.ChangeCustomizationString = null
static

Делегат для смены строки соединения

Полный список свойств

int ICSSoft.STORMNET.Business.SQLDataService.CommandTimeout
getset

IDbCommand.CommandTimeout кроме установки этого таймаута не забудьте установить флаг UseCommandTimeout

string ICSSoft.STORMNET.Business.SQLDataService.CustomizationString
getset

Настроичная строка (строка соединения)

bool ICSSoft.STORMNET.Business.SQLDataService.DoNotChangeCustomizationString
getset

Не менять строку соединения общим делегатом ChangeCustomizationString

ISecurityManager ICSSoft.STORMNET.Business.SQLDataService.SecurityManager
getprotected set

Сервис подсистемы полномочий, который применяется для проверки прав доступа. Рекомендуется устанавливать его через конструктор, в противном случае используется настройка в Unity.

StorageTypeEnum ICSSoft.STORMNET.Business.SQLDataService.StorageType
getset

Тип хранилища

System.Collections.SortedList ICSSoft.STORMNET.Business.SQLDataService.Types
getprotected

Gets the types.

ICSSoft.STORMNET.TypeUsage ICSSoft.STORMNET.Business.SQLDataService.TypeUsage
getset

bool ICSSoft.STORMNET.Business.SQLDataService.UseCommandTimeout
getset

Использовать ли атрибут CommandTimeout (если задан через конфиг, то будет true) по-умолчанию false

Cобытия

AfterGenerateSQLSelectQueryEventHandler ICSSoft.STORMNET.Business.SQLDataService.AfterGenerateSQLSelectQuery

После генерации, но до вычитки

AfterGenerateSQLSelectQueryEventHandler ICSSoft.STORMNET.Business.SQLDataService.AfterGenerateSQLSelectQueryStatic
static

После генерации, но до вычитки, статический эвент (выполняется после обработки в AfterGenerateSQLSelectQuery)

AfterUpdateObjectsEventHandler ICSSoft.STORMNET.Business.SQLDataService.AfterUpdateObjects

После выполнения обновления объектов в базе.

BeforeUpdateObjectsEventHandler ICSSoft.STORMNET.Business.SQLDataService.BeforeUpdateObjects

Перед выполнением обновления объектов в базе. После отработки бизнес-серверов.

OnGenerateSQLSelectEventHandler ICSSoft.STORMNET.Business.SQLDataService.OnGenerateSQLSelect

Событие перед генерацией запроса