ServiceClientGenerator.GeneratorDriver.GenerateUnmarshaller C# (CSharp) Метод

GenerateUnmarshaller() публичный Метод

public GenerateUnmarshaller ( List structures ) : void
structures List
Результат void
        void GenerateUnmarshaller(List<string> structures)
        {
            foreach (var structure in structures)
            {
                var shape = this.Configuration.ServiceModel.FindShape(structure);
                var lookup = new NestedStructureLookup();
                lookup.SearchForNestedStructures(shape);
                foreach (var nestedStructure in lookup.NestedStructures)
                {
                    // Skip structure unmarshallers that have already been generated for the parent model
                    if (IsShapePresentInParentModel(this.Configuration, nestedStructure.Name))
                        continue;

                    if (this.Configuration.ServiceModel.Customizations.IsSubstitutedShape(nestedStructure.Name))
                        continue;

                    // Skip already processed unmarshallers. This handles the case of structures being returned in mulitiple requests.
                    if (!this._processedUnmarshallers.Contains(nestedStructure.Name))
                    {
                        var generator = GetStructureUnmarshaller();
                        generator.Structure = nestedStructure;

                        this.ExecuteGenerator(generator, nestedStructure.Name + "Unmarshaller.cs", "Model.Internal.MarshallTransformations");
                        this._processedUnmarshallers.Add(nestedStructure.Name);
                    }
                }
            }
        }