diff --git a/Tools/Asn1SourceGenerator/Emit/CSharpEmitter.cs b/Tools/Asn1SourceGenerator/Emit/CSharpEmitter.cs index 2831ca9..4d6585f 100644 --- a/Tools/Asn1SourceGenerator/Emit/CSharpEmitter.cs +++ b/Tools/Asn1SourceGenerator/Emit/CSharpEmitter.cs @@ -883,7 +883,14 @@ private static void EmitFieldValueEncode(IndentedWriter w, ResolvedField field) case FieldKind.Enumerated: { string val = isNullable ? $"{field.PropertyName}.Value" : field.PropertyName; - w.WriteLine($"writer.WriteInteger((long){val});"); + if (field.Encoding.EnumType == null) + { + w.WriteLine($"writer.WriteInteger((long){val});"); + } + else + { + w.WriteLine($"writer.WriteEnumeratedValue({val});"); + } break; }