LogicBuilder.Forms.Parameters
2.1.1
Prefix Reserved
dotnet add package LogicBuilder.Forms.Parameters --version 2.1.1
NuGet\Install-Package LogicBuilder.Forms.Parameters -Version 2.1.1
<PackageReference Include="LogicBuilder.Forms.Parameters" Version="2.1.1" />
<PackageVersion Include="LogicBuilder.Forms.Parameters" Version="2.1.1" />
<PackageReference Include="LogicBuilder.Forms.Parameters" />
paket add LogicBuilder.Forms.Parameters --version 2.1.1
#r "nuget: LogicBuilder.Forms.Parameters, 2.1.1"
#:package LogicBuilder.Forms.Parameters@2.1.1
#addin nuget:?package=LogicBuilder.Forms.Parameters&version=2.1.1
#tool nuget:?package=LogicBuilder.Forms.Parameters&version=2.1.1
LogicBuilder.Forms.Parameters
Overview
This library provides parameter classes that serve as a contract between the LogicBuilder application and .NET applications. These parameter classes enable users to configure data structures in the Logic Builder Client's visual designer, which are then serialized and used to generate LINQ expressions at runtime in .NET applications.
Purpose
The library bridges the gap between visual design-time configuration and runtime code execution by:
- Collecting structured data in the Logic Builder Client using .NET Forms-based editors
- Serializing configuration for transfer between the designer and runtime applications
- Enabling dynamic LINQ expression generation at runtime based on design-time configuration
Key Components
ConnectorParameters
The ConnectorParameters class holds information about connector shapes on flow diagrams and their corresponding UI implementations.
Properties
Id(int): The unique identifier for the connector.ShortString(string): A resource file key used as a reference for theLongStringproperty. This enables localization and resource management.LongString(string): The display text or full description associated with the connector/button.ConnectorData(object): Additional metadata about the button's appearance and behavior, provided by developers at design time. This flexible property allows for custom data structures specific to your application's needs.
Expressions Namespace
The Expressions folder contains parameter classes that represent LINQ expression components. These classes implement the IExpressionParameter interface and are used to build expression trees at runtime.
Core Expression Classes
BinaryOperatorParameters: Abstract base class for binary operations with left and right operandsEqualsBinaryOperatorParameters: Equality comparison (==)NotEqualsBinaryOperatorParameters: Inequality comparison (!=)GreaterThanBinaryOperatorParameters: Greater than comparison (>)GreaterThanOrEqualsBinaryOperatorParameters: Greater than or equal comparison (>=)LessThanBinaryOperatorParameters: Less than comparison (<)LessThanOrEqualsBinaryOperatorParameters: Less than or equal comparison (<=)AndBinaryOperatorParameters: Logical AND (&&)OrBinaryOperatorParameters: Logical OR (||)
Unary and Value Operators
NotOperatorParameters: Logical NOT operation (!)ConstantOperatorParameters: Represents constant values with optional type informationCollectionConstantOperatorParameters: Represents collections of constant values with element typeParameterOperatorParameters: Represents lambda expression parameters
Member Access and Type Conversion
MemberSelectorOperatorParameters: Accesses properties or fields from a source operand (e.g.,entity.Property)ConvertOperatorParameters: Type conversion operations
Collection Operations
InOperatorParameters: Checks if an item exists in a collectionContainsOperatorParameters: String or collection contains operationAsEnumerableOperatorParameters: Converts to IEnumerableAsQueryableOperatorParameters: Converts to IQueryable
Lambda Expressions
FilterLambdaOperatorParameters: Represents filter predicates (e.g.,x => x.Age > 18)- Properties:
FilterBody,SourceElementType,ParameterName
- Properties:
SelectorLambdaOperatorParameters: Represents projection/selector expressions (e.g.,x => x.Name)- Properties:
Selector,SourceElementType,BodyType,ParameterName
- Properties:
Expansions Namespace
The Expansions folder contains parameter classes for OData-style query operations, particularly for expanding and projecting related entities.
Select/Expand Operations
SelectExpandItemParameters: Configures navigation property expansions with optional filtering, sorting, and field selectionMemberName: Navigation property name to expandFilter: Optional filter for collection navigation propertiesQueryFunction: Optional sorting, skip, and take operationsSelects: List of fields to select (projection)ExpandedItems: Nested expansions for related entities
SelectExpandItemFilterParameters: Wraps filter lambda expressions for navigation property filteringSelectExpandItemQueryFunctionParameters: Configures query operations on expanded collections
Sorting and Paging
SortCollectionParameters: Defines sorting, skip, and take operations for collectionsSortDescriptions: List of sort criteriaSkip: Number of items to skip (pagination)Take: Maximum number of items to return (page size)
SortDescriptionParameters: Individual sort criteriaPropertyName: Property to sort bySortDirection: Ascending or descending order
Usage Workflow
- Design Time: Users configure queries, filters, and data operations in the Logic Builder Client using visual forms populated by these parameter classes
- Serialization: The configured parameters are serialized (typically to JSON or XML)
- Runtime: .NET applications deserialize the parameters and use them to construct LINQ expression trees dynamically
- Execution: The generated expressions are executed against data sources (Entity Framework, LINQ to Objects, etc.)
Example Scenario
A user might configure a query in Logic Builder to:
- Filter products where
Price > 100 - Sort by
Nameascending - Select only
Id,Name, andPricefields - Expand the
Categorynavigation property
This configuration would be captured using classes like FilterLambdaOperatorParameters, SortCollectionParameters, and SelectExpandItemParameters, then used at runtime to generate the equivalent LINQ expression.
Installation
dotnet add package LogicBuilder.Forms.Parameters
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- LogicBuilder.Attributes (>= 2.0.6)
- LogicBuilder.Structures (>= 8.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.1.1 | 85 | 6/9/2026 |
| 2.1.0 | 93 | 6/5/2026 |
| 2.0.6 | 184 | 2/12/2026 |
| 2.0.4 | 607 | 5/11/2023 |
| 2.0.3 | 2,405 | 3/12/2022 |
| 2.0.2 | 5,601 | 11/23/2021 |
| 2.0.0 | 912 | 10/26/2021 |
| 1.0.4 | 579 | 10/26/2021 |
| 1.0.3 | 792 | 9/22/2021 |
| 1.0.2 | 2,301 | 2/20/2021 |
| 1.0.1-preview02 | 761 | 7/20/2020 |
| 1.0.1-preview01 | 894 | 7/18/2020 |
| 1.0.0 | 1,415 | 12/30/2018 |
Making constant parameter arguments nullable.