# Class SchemeEntity OptimaJet.Workflow.Core.Entities.SchemeEntity Represents a persistence entity that stores a workflow scheme definition and its inlining, tag, and tenant metadata. Namespace: [OptimaJet.Workflow.Core.Entities](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/) ```csharp public class SchemeEntity : IEntity ``` ## Type Hierarchy - SchemeEntity Current type - Implemented interfaces - [IEntity](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/IEntity/) ## Properties `public Guid Id { get; set; }` Gets or sets the identifier of the stored workflow scheme record. `public string Code { get; set; }` Gets or sets the code used to select the workflow scheme within its tenant scope. `public string Scheme { get; set; }` Gets or sets the serialized workflow scheme definition. `public bool CanBeInlined { get; set; }` Gets or sets a value indicating whether the workflow scheme can be inlined into another workflow scheme. `public string InlinedSchemes { get; set; }` Gets or sets the JSON-serialized list of codes for workflow schemes inlined into this workflow scheme. `public string Tags { get; set; }` Gets or sets the JSON-serialized list of tags assigned to the workflow scheme. `public string TenantId { get; set; }` Gets or sets the tenant identifier for the workflow scheme, or [null](https://learn.microsoft.com/dotnet/csharp/language-reference/keywords/null) for a shared workflow scheme. ## Methods `public List GetInlinedSchemes()` Deserializes [SchemeEntity.InlinedSchemes](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/) into a list of inlined workflow scheme codes. ### Returns | Type | Description | | --- | --- | | `List` | The deserialized workflow scheme codes, or an empty list when [SchemeEntity.InlinedSchemes](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/) is [null](https://learn.microsoft.com/dotnet/csharp/language-reference/keywords/null). | `public object GetValue(string key)` Gets the value of the property identified by `key`. ### Parameters | Name | Type | Description | | --- | --- | --- | | `key` | `String` | The case-sensitive name of [SchemeEntity.Id](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), [SchemeEntity.Code](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), [SchemeEntity.Scheme](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), [SchemeEntity.CanBeInlined](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), [SchemeEntity.InlinedSchemes](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), [SchemeEntity.Tags](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), or [SchemeEntity.TenantId](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/). | ### Returns | Type | Description | | --- | --- | | `Object` | The value of the property identified by `key`. | ### Exceptions | Type | Description | | --- | --- | | `ColumnNotExistsException` | `key` does not identify a supported property. | `public void SetValue(string key, object value)` Sets the value of the property identified by `key`. ### Parameters | Name | Type | Description | | --- | --- | --- | | `key` | `String` | The case-sensitive name of [SchemeEntity.Id](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), [SchemeEntity.Code](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), [SchemeEntity.Scheme](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), [SchemeEntity.CanBeInlined](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), [SchemeEntity.InlinedSchemes](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), [SchemeEntity.Tags](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), or [SchemeEntity.TenantId](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/). | | `value` | `Object` | The value to assign. A value for [SchemeEntity.Id](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/) must be a [Guid](https://learn.microsoft.com/dotnet/api/system.guid), and a value for [SchemeEntity.CanBeInlined](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/) must be a [bool](https://learn.microsoft.com/dotnet/api/system.boolean). For the remaining properties, a value that is not a [string](https://learn.microsoft.com/dotnet/api/system.string) is assigned as [null](https://learn.microsoft.com/dotnet/csharp/language-reference/keywords/null). | ### Exceptions | Type | Description | | --- | --- | | `ColumnNotExistsException` | `key` does not identify a supported property. | | `InvalidCastException` | `key` identifies [SchemeEntity.Id](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/) or [SchemeEntity.CanBeInlined](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), and `value` is not [null](https://learn.microsoft.com/dotnet/csharp/language-reference/keywords/null) and has an incompatible type. | | `NullReferenceException` | `key` identifies [SchemeEntity.Id](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/) or [SchemeEntity.CanBeInlined](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SchemeEntity/), and `value` is [null](https://learn.microsoft.com/dotnet/csharp/language-reference/keywords/null). | [Previous RuntimeEntity](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/RuntimeEntity/) [Next SyncEntity](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Entities/SyncEntity/)