Beispiel #1
0
        /// <summary>
        /// 转换类
        /// </summary>
        /// <param name="request"></param>
        /// <param name="response"></param>
        /// <returns></returns>
        public Dictionary <string, SwaggerDefinion> ConverDefinions(Field model)
        {
            var dic      = new Dictionary <string, SwaggerDefinion>();
            var definion = new SwaggerDefinion()
            {
                properties = new Dictionary <string, SwaggerPro>()
            };

            foreach (var field in model.TypeModel.Fields)
            {
                SwaggerPro schema;
                if (field.IsArray)
                {
                    schema = new SwaggerSchemaAry()
                    {
                        type  = FieldType.Array,
                        items = new SwaggerPro()
                    };
                    ConverPro(field, ((SwaggerSchemaAry)schema).items, dic);
                }
                else
                {
                    schema = new SwaggerPro();
                    ConverPro(field, schema, dic);
                }
                definion.properties.Add(field.FieldName, schema);
            }
            if (!dic.ContainsKey(model.Type))
            {
                dic.Add(model.Type, definion);
            }
            return(dic);
        }
Beispiel #2
0
 public void ConverPro(Field field, SwaggerPro schema, Dictionary <string, SwaggerDefinion> dic)
 {
     if (field.TypeModel == null)
     {
         schema.type = field.Type;
     }
     else
     {
         schema.ModelName = field.Type;
         foreach (var item in ConverDefinions(field))
         {
             if (!dic.ContainsKey(item.Key))
             {
                 dic.Add(item.Key, item.Value);
             }
         }
     }
 }