C#


ROSLYN.PERFORMANCE.CA1838 : Avoid 'StringBuilder' parameters for P/Invokes (C#)

See Roslyn-Detected C# Warning Classes for more information.

Summary

Marshalling of 'StringBuilder' always creates a native buffer copy, resulting in multiple allocations for one marshalling operation.

This check corresponds to Roslyn rule CA1838. For full rule details, see the Microsoft website: CA1838.

Properties

Class Name Avoid 'StringBuilder' parameters for P/Invokes (C#)
Significance reliability
Mnemonic ROSLYN.PERFORMANCE.CA1838
Categories None
Availability Available for C# only.
Enabling Checks for this warning class are enabled by default. To disable them, add the following WARNING_FILTER rule to the project configuration file.
WARNING_FILTER += discard class="Avoid 'StringBuilder' parameters for P/Invokes (C#)"

Relevant Configuration File Parameters

The following configuration file parameters affect checks for this warning class.