EntitySchemaQuery.CreateFilterWithParameters(FilterComparisonType,String,IEnumerable,Boolean) - метод Смотри также Пример Terrasoft.Core.Entities - пространство имен > EntitySchemaQuery - класс > CreateFilterWithParameters - метод : CreateFilterWithParameters(FilterComparisonType,String,IEnumerable,Boolean) - метод C#
- comparisonType
- Тип сравнения.
- leftExpressionColumnPath
- Путь к колонке, содержащей выражение левой части фильтра.
- rightExpressionParameterValues
- Перечислитель значений параметров из правой части фильтра.
- useDisplayValue
- Признак типа значения колонки-справочника, которое используется в фильтре:
true
- значение для отображения;false
- хранимое значение.
Glossary Item Box
public IEntitySchemaQueryFilterItem CreateFilterWithParameters( FilterComparisonType comparisonType, string leftExpressionColumnPath, IEnumerable<object> rightExpressionParameterValues, bool useDisplayValue )
Параметры
- comparisonType
- Тип сравнения.
- leftExpressionColumnPath
- Путь к колонке, содержащей выражение левой части фильтра.
- rightExpressionParameterValues
- Перечислитель значений параметров из правой части фильтра.
- useDisplayValue
- Признак типа значения колонки-справочника, которое используется в фильтре:
true
- значение для отображения;false
- хранимое значение.
Тип возвращаемого значения
Экземпляр созданного фильтра IEntitySchemaQueryFilterItem.В данном примере строится фильтр для выборки городов, находящихся в Украине и России.
// Создание экземпляра менеджера схем объектов. EntitySchemaManager esqManager = UserConnection.EntitySchemaManager; // Создание экземпляра результирующего запроса. var esqResult = new EntitySchemaQuery(esqManager, "Country"); esqResult.AddColumn("[City:Country:Id].Name"); // Определяем список значений параметров. var filterValues = new Collection<object> { "Россия", "Украина" }; // Создание экземпляра фильтра с заданными параметрами. var filter = esqResult.CreateFilterWithParameters(FilterComparisonType.Equal, "Name", filterValues, false); // Добавление фильтра в коллекцию фильтров результирующего запроса. esqResult.Filters.Add(filter); // Получение экземпляра запроса на выборку. var esqSelectQuery = esqResult.GetSelectQuery(UserConnection); // Установление признака, что параметры будут добавлены в запрос как значения. esqSelectQuery.BuildParametersAsValue = true; // Получение текста результирующего запроса. string esqSqlText = esqSelectQuery.GetSqlText(); // Текст результирующего sql-запроса. // MS SQL: // SELECT // [City].[Name] [City.Name] // FROM // [dbo].[Country] [Country] //LEFT OUTER JOIN // [dbo].[City] [City] ON ([City].[CountryId] = [Country].[Id]) // WHERE // [Country].[Name] IN (N'Россия', N'Украина') |