c# - 将根对象添加到 NJsonSchema 模式生成器
问题描述
我正在使用 NJsonSchema 从 c# 类生成 JasonSchema。我可以创建这个架构:
{
"title": "SchemaModel",
"type": "object",
"additionalProperties": false,
"properties": {
"caseId": {
"title": "Case Id",
"type": [
"null",
"string"
],
"description": "desc.",
}
}
}
通过使用:
var settings = new JsonSchemaGeneratorSettings
{
DefaultPropertyNameHandling = PropertyNameHandling.CamelCase
};
var generator = new JsonSchemaGenerator(settings);
var schema = generator.Generate(typeof(SchemaModel));
但我需要将其包装在一个名为模式的对象中:
{
"schema": {
"title": "SchemaModel",
"type": "object",
"additionalProperties": false,
"properties": {
"caseId": {
"title": "Case Id",
"type": [
"null",
"string"
],
"description": "desc.",
}
}
}
}
我如何通过 NJsonSchema c# 模式生成器做到这一点?
解决方案
不确定这是否是最好的解决方案,但我最终这样做了:
return new JObject
{
{ "schema", JToken.Parse(schema.ToJson()) }
};
推荐阅读
- python - 在 Pytest 文档中使用作为 *fruit_bowl 传入参数的目的
- file-permissions - Asp.net 站点:无法访问的日志:状态
- oracle - 不一致的数据类型:预期的 CHAR 得到了 REF
- python - 将 Azure 翻译的 PDF 文件保存为 MS Word docx 文件
- python-3.x - Python 网络日志记录示例 - 如何禁用服务器端控制台打印
- javascript - 让 Bootstrap 日期选择器显示为字符串,但格式为 yyyy-mm-dddd
- java - 我无法让它在 java 中的工资单程序上正确扣除。我得到的错误是我的变量之一尚未初始化
- javascript - Vue.js/NuxtJS - 如何创建具有可通过 JSON 配置文件自定义的默认设计的组件
- docksal - Docksal 和 Git 浅问题
- javascript - React-Redux:操作已分派,但 Reducer 未更新状态