Class RedbServiceConfiguration

Assembly: redb.Core.dll

RedbService behavior configuration.

public class RedbServiceConfiguration

Inheritance

ObjectRedbServiceConfiguration

Properties

AutoRecomputeHash

Automatically recompute hash when saving.

public bool AutoRecomputeHash { get; set; }

AutoSetModifyDate

Automatically set modification date when saving.

public bool AutoSetModifyDate { get; set; }

AutoSyncSchemesOnSave

Automatically synchronize schemes when saving objects.

public bool AutoSyncSchemesOnSave { get; set; }

CacheDomain

Cache domain name for isolating scheme caches between different databases.

public string? CacheDomain { get; set; }

ConnectionString

PostgreSQL connection string. Required for automatic IRedbContext registration.

public string? ConnectionString { get; set; }

DefaultCheckPermissionsOnDelete

Check permissions by default when deleting objects.

public bool DefaultCheckPermissionsOnDelete { get; set; }

DefaultCheckPermissionsOnLoad

Check permissions by default when loading objects.

public bool DefaultCheckPermissionsOnLoad { get; set; }

DefaultCheckPermissionsOnQuery

Check permissions by default when executing queries.

public bool DefaultCheckPermissionsOnQuery { get; set; }

DefaultCheckPermissionsOnSave

Check permissions by default when saving objects.

public bool DefaultCheckPermissionsOnSave { get; set; }

DefaultLoadDepth

public int DefaultLoadDepth { get; set; }

DefaultMaxTreeDepth

public int DefaultMaxTreeDepth { get; set; }

DefaultStrictDeleteExtra

Strictly delete extra fields when synchronizing schemes by default.

public bool DefaultStrictDeleteExtra { get; set; }

EavSaveStrategy

EAV properties save strategy.

[JsonConverter(typeof(EavSaveStrategyJsonConverter))]
public EavSaveStrategy EavSaveStrategy { get; set; }

EnableDataValidation

Enable data validation when saving.

public bool EnableDataValidation { get; set; }

EnableLazyLoadingForProps

Enable lazy loading for RedbObject Props.

public bool EnableLazyLoadingForProps { get; set; }

EnableListCache

Enable caching of lists and their items.

public bool EnableListCache { get; set; }

EnableMetadataCache

Enable scheme metadata caching (OBSOLETE - use MetadataCache).

public bool EnableMetadataCache { get; set; }

EnablePropsCache

Enable transparent Props object caching.

public bool EnablePropsCache { get; set; }

EnableSchemaValidation

Enable scheme validation before synchronization.

public bool EnableSchemaValidation { get; set; }

IdResetStrategy

Strategy for handling ID after object deletion.

[JsonConverter(typeof(ObjectIdResetStrategyJsonConverter))]
public ObjectIdResetStrategy IdResetStrategy { get; set; }

JsonOptions

JSON serialization settings for arrays.

public JsonSerializationOptions JsonOptions { get; set; }

ListCacheTtl

public TimeSpan ListCacheTtl { get; set; }

MetadataCacheLifetimeMinutes

public int MetadataCacheLifetimeMinutes { get; set; }

MissingObjectStrategy

Strategy for handling non-existent objects on UPDATE.

[JsonConverter(typeof(MissingObjectStrategyJsonConverter))]
public MissingObjectStrategy MissingObjectStrategy { get; set; }

PropsCacheMaxSize

public int PropsCacheMaxSize { get; set; }

PropsCacheTtl

public TimeSpan PropsCacheTtl { get; set; }

SkipHashValidationOnCacheCheck

Skip hash validation in DB before cache access.

public bool SkipHashValidationOnCacheCheck { get; set; }

SystemUserId

System user ID for operations without permission checks.

public long SystemUserId { get; set; }

ThrowOnObjectNotFound

Throw exception if object not found in LoadAsync.

public bool ThrowOnObjectNotFound { get; set; }

WarmupMetadataCacheOnInit

Warm up scheme metadata cache during RedbService initialization.

public bool WarmupMetadataCacheOnInit { get; set; }

Methods

Clone()

Create configuration copy.

public RedbServiceConfiguration Clone()

GetDescription()

Get configuration description.

public string GetDescription()

GetEffectiveCacheDomain()

Gets effective cache domain name.

public string GetEffectiveCacheDomain()

IsPerformanceOptimized()

Check if configuration is optimized for performance

public bool IsPerformanceOptimized()

IsProductionSafe()

Check if configuration is safe for production

public bool IsProductionSafe()