0
我正在尋找一個C#庫,它將根據給定的JSON架構生成有效的JSON對象。我想產生一個非常簡單的JSON樣品就像Swagger是怎麼做的:用於將json架構轉換爲示例JSON的C#庫
我已經看到了一些JavaScript庫一樣JSON Schema Faker,但我需要一個C#/。NET圖書館,在那裏我可以生成。在我的後端代碼中示例JSON。
我正在尋找一個C#庫,它將根據給定的JSON架構生成有效的JSON對象。我想產生一個非常簡單的JSON樣品就像Swagger是怎麼做的:用於將json架構轉換爲示例JSON的C#庫
我已經看到了一些JavaScript庫一樣JSON Schema Faker,但我需要一個C#/。NET圖書館,在那裏我可以生成。在我的後端代碼中示例JSON。
好吧,它是非常簡單的,並沒有考慮到JSON模式的許多因素,但它可能是一個很好的起點。它也取決於Newtonsoft的JsonSchema庫。
public class JsonSchemaSampleGenerator
{
public JsonSchemaSampleGenerator()
{
}
public static JToken Generate(JsonSchema schema)
{
JToken output;
switch (schema.Type)
{
case JsonSchemaType.Object:
var jObject = new JObject();
if (schema.Properties != null)
{
foreach (var prop in schema.Properties)
{
jObject.Add(TranslateNameToJson(prop.Key), Generate(prop.Value));
}
}
output = jObject;
break;
case JsonSchemaType.Array:
var jArray = new JArray();
foreach (var item in schema.Items)
{
jArray.Add(Generate(item));
}
output = jArray;
break;
case JsonSchemaType.String:
output = new JValue("sample");
break;
case JsonSchemaType.Float:
output = new JValue(1.0);
break;
case JsonSchemaType.Integer:
output = new JValue(1);
break;
case JsonSchemaType.Boolean:
output = new JValue(false);
break;
case JsonSchemaType.Null:
output = JValue.CreateNull();
break;
default:
output = null;
break;
}
return output;
}
public static string TranslateNameToJson(string name)
{
return name.Substring(0, 1).ToLower() + name.Substring(1);
}
}
非常感謝。正是我需要去的。 –
我寫了一個簡單的,我只是需要找到一種使它成爲OSS的方法。簡單的工作並不難。讓我看看是否可以得到一小段代碼,以幫助您開始。 –
非常感謝。 –
*要求我們推薦或查找書籍,工具,軟件庫,教程或其他非本地資源的問題是堆棧溢出* – I4V