Skip to content

GenerateSerializerSourceCodes doesn't recursive when type is array #120

Closed
@neuecc

Description

@neuecc

SerializerCodeGenerationConfiguration.IsRecursive is nice feature, thanks.
But if top type is array, doesn't recursive.

public class MyClass
{
    // can't generate MyClass3Serializer.
    // If MyClass2 MyProperty, can generate MyClass3Serializer.
    public MyClass2[] MyProperty { get; set; }
}

public class MyClass2
{
    public MyClass3 MyProperty { get; set; }
}

public class MyClass3
{
    public int MyProperty { get; set; }
}

repro full code.

var settings = new SerializerCodeGenerationConfiguration
{
    OutputDirectory = Path.GetTempPath(),
    SerializationMethod = SerializationMethod.Array,
    Namespace = "Hoge" + ".GeneratedSerializers",
    IsRecursive = true,
    PreferReflectionBasedSerializer = false
};

var result = SerializerGenerator.GenerateSerializerSourceCodes(settings, typeof(MyClass));
foreach (var item in result)
{
    // expected : MyClass, MyClass2, MyClass3
    // actual   : MyClass, MyClass2
    Console.WriteLine(item.TargetType);
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugDetected as bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions