Configuration
This page covers ForyBuilder options and default configuration values for Apache Fory™ C#.
Build a Runtime
using Apache.Fory;
Fory fory = Fory.Builder().Build();
ThreadSafeFory threadSafe = Fory.Builder().BuildThreadSafe();
Default Configuration
Fory.Builder().Build() uses:
| Option | Default | Description |
|---|---|---|
Xlang | true | Cross-language protocol mode |
TrackRef | false | Reference tracking disabled |
Compatible | false | Schema-consistent mode (no evolution metadata) |
CheckStructVersion | false | Struct schema hash checks disabled |
MaxDepth | 20 | Max dynamic nesting depth |
Builder Options
Xlang(bool enabled = true)
Controls cross-language mode.
Fory fory = Fory.Builder()
.Xlang(true)
.Build();
TrackRef(bool enabled = false)
Enables reference tracking for shared/circular object graphs.
Fory fory = Fory.Builder()
.TrackRef(true)
.Build();
Compatible(bool enabled = false)
Enables schema evolution mode.
Fory fory = Fory.Builder()
.Compatible(true)
.Build();
CheckStructVersion(bool enabled = false)
Enables strict schema hash validation for generated struct serializers.
Fory fory = Fory.Builder()
.CheckStructVersion(true)
.Build();
MaxDepth(int value)
Sets max nesting depth for dynamic object graphs.
Fory fory = Fory.Builder()
.MaxDepth(32)
.Build();
value must be greater than 0.
Common Configurations
Fast schema-consistent service
Fory fory = Fory.Builder()
.TrackRef(false)
.Compatible(false)
.Build();
Compatible cross-language service
Fory fory = Fory.Builder()
.Xlang(true)
.Compatible(true)
.TrackRef(true)
.Build();
Thread-safe service instance
ThreadSafeFory fory = Fory.Builder()
.Compatible(true)
.TrackRef(true)
.BuildThreadSafe();