向现有 json 模式添加额外字段并动态生成 c# class
Add extra fields to existing json schema and generate c# class on fly
我正在尝试找到在新的 json 模式文件中向现有 json 模式添加额外字段并在 github 管道和项目中生成它们的解决方案可以使用它们。但我不确定该怎么做。例如,下面的现有架构:
{
type: 'object',
required: [ 'product' ],
additionalProperties: false,
properties: {
productName: {
enum: [ 'product1', 'product2', 'product3' ],
},
price: { type: 'int' },
},
};
但是知道我想在额外的属性中添加更多字段 json,我该怎么做?例如我现在需要 product quantity
,所以我可以编译两个 json 模式并形成一个完整的 class。也可以从其他模式中引用定义,或者我总是必须分别定义它们。
非常感谢你能帮助我。
我用 js 和 Lodash 将两个方案文件合并为一个,它就像魔术一样。
const _ = require("lodash");
const schema = require('./schema.json');
const extention = require("./extentions.json", 'utf-8');
var newschema = _.merge(schema, extention);
const fs = require('fs')
fs.writeFile("./newschema.json", JSON.stringify(newschema, null, 4), (err) =>
{
if (err) throw err;
});
我正在尝试找到在新的 json 模式文件中向现有 json 模式添加额外字段并在 github 管道和项目中生成它们的解决方案可以使用它们。但我不确定该怎么做。例如,下面的现有架构:
{
type: 'object',
required: [ 'product' ],
additionalProperties: false,
properties: {
productName: {
enum: [ 'product1', 'product2', 'product3' ],
},
price: { type: 'int' },
},
};
但是知道我想在额外的属性中添加更多字段 json,我该怎么做?例如我现在需要 product quantity
,所以我可以编译两个 json 模式并形成一个完整的 class。也可以从其他模式中引用定义,或者我总是必须分别定义它们。
非常感谢你能帮助我。
我用 js 和 Lodash 将两个方案文件合并为一个,它就像魔术一样。
const _ = require("lodash");
const schema = require('./schema.json');
const extention = require("./extentions.json", 'utf-8');
var newschema = _.merge(schema, extention);
const fs = require('fs')
fs.writeFile("./newschema.json", JSON.stringify(newschema, null, 4), (err) =>
{
if (err) throw err;
});