Beispiel #1
0
    public override async Task Load(XElement node, bool requireName = true)
    {
        await base.Load(node, requireName);

        var keyedValueNode = node.Element(XName.Get("KeyedValue", LoquiGenerator.Namespace));

        if (keyedValueNode != null)
        {
            var dictType = new DictType_KeyedValue();
            dictType.SetObjectGeneration(ObjectGen, setDefaults: false);
            subGenerator = dictType;
            await subGenerator.Load(node, requireName);

            subDictGenerator = dictType;
        }
        else
        {
            var dictType = new DictType_Typical();
            dictType.SetObjectGeneration(ObjectGen, setDefaults: false);
            subGenerator = dictType;
            await subGenerator.Load(node, requireName);

            subDictGenerator = dictType;
        }
    }