bcquality/microsoft/knowledge/performance/use-textbuilder-for-string-concatenation-in-loops.md
Jesper Schulz-Wedde 3f0b6a41db Correct performance knowledge guidance
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 667c64a8-eb36-4440-bc41-6a97d8fb5542
2026-07-14 11:18:52 +02:00

1,006 B

bc-version domain keywords technologies countries application-area
all
performance
textbuilder
string-concatenation
loop
append
immutable-text
al
w1
all

Use AL TextBuilder for repeated text mutation

Description

AL TextBuilder is a reference type intended for modifying text without creating a new Text value for each change. Microsoft documents it as the performance-oriented AL primitive for concatenating many strings, including loop-built output. Append and AppendLine build the value, and ToText returns the completed text.

Best Practice

When a loop repeatedly appends fragments to one result, use a TextBuilder local and convert once after the loop. Keep ordinary Text expressions for a fixed, small number of fragments; this rule is about repeated mutation, not every concatenation.

Anti Pattern

Building an unbounded export or message with Result += Fragment on every iteration when AL's TextBuilder directly represents the operation.