ServiceStack.NativeTypes.CSharp.CSharpGenerator.Type C# (CSharp) Méthode

Type() public méthode

public Type ( MetadataTypeName typeName, bool includeNested = false ) : string
typeName MetadataTypeName
includeNested bool
Résultat string
        public string Type(MetadataTypeName typeName, bool includeNested = false)
        {
            return Type(typeName.Name, typeName.GenericArgs, includeNested: includeNested);
        }

Same methods

CSharpGenerator::Type ( string type, string genericArgs, bool includeNested = false ) : string

Usage Example

        public List<MetadataType> GetMetadataTypesForOperation(IRequest httpReq, Operation op)
        {
            var typeMetadata = HostContext.TryResolve<INativeTypesMetadata>();

            var typesConfig = HostContext.AppHost.GetTypesConfigForMetadata(httpReq);

            var metadataTypes = typeMetadata != null
                ? typeMetadata.GetMetadataTypes(httpReq, typesConfig)
                : new MetadataTypesGenerator(this, typesConfig)
                    .GetMetadataTypes(httpReq);

            var types = new List<MetadataType>();

            var reqType = FindMetadataType(metadataTypes, op.RequestType);
            if (reqType != null)
            {
                types.Add(reqType);

                AddReferencedTypes(reqType, metadataTypes, types);
            }

            var resType = FindMetadataType(metadataTypes, op.ResponseType);
            if (resType != null)
            {
                types.Add(resType);

                AddReferencedTypes(resType, metadataTypes, types);
            }

            var generator = new CSharpGenerator(typesConfig);
            types.Each(x =>
            {
                x.DisplayType = x.DisplayType ?? generator.Type(x.Name, x.GenericArgs);
                x.Properties.Each(p =>
                    p.DisplayType = p.DisplayType ?? generator.Type(p.Type, p.GenericArgs));
            });

            return types;
        }
All Usage Examples Of ServiceStack.NativeTypes.CSharp.CSharpGenerator::Type