The 'DataMemberMode.Content' is not valid for the member '{0}'. Only mutable reference types are supported for 'DataMemberMode.Content' Mode members.
The DataMemberMode.Content mutates the object which is currently in the member.
As this is not possible with the current serializers, only mutable types are supported for DataMemberMode.Content
. Immutable types in this context are not reference types and strings.
The following example generates STRDIAG002 on each property:
using Stride.Core;
public class STRDIAG002
{
[DataMember(DataMemberMode.Content)]
public int Value { get; set; }
[DataMember(DataMemberMode.Content)]
public string Value;
}
To resolve the warning, pick either a reference type for the member or use DataMemberMode.Assign
for Immutable types.