0
我試圖使用NJsonSchema生成C#類,但它命名數組「anonymous_」中的對象的類。根據集合屬性名稱爲集合中的對象生成C#類名稱
例如,此JSON模式片段
"Identifiers": { "type": "array", "items": { "type": "object", "properties": { "ID": { "type": "string" }, "IDType": { "type": "string" } }, "required": [ "ID", "IDType" ] }
生成此C#屬性和階級
[Newtonsoft.Json.JsonProperty("Identifiers", Required = Newtonsoft.Json.Required.Always)] [System.ComponentModel.DataAnnotations.Required] public System.Collections.ObjectModel.ObservableCollection<Anonymous> Identifiers { get; set; } = new System.Collections.ObjectModel.ObservableCollection<Anonymous>();
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "9.3.0.0")] public partial class Anonymous { [Newtonsoft.Json.JsonProperty("ID", Required = Newtonsoft.Json.Required.Always)] [System.ComponentModel.DataAnnotations.Required] public string ID { get; set; } [Newtonsoft.Json.JsonProperty("IDType", Required = Newtonsoft.Json.Required.Always)] [System.ComponentModel.DataAnnotations.Required] public string IDType { get; set; } public string ToJson() { return Newtonsoft.Json.JsonConvert.SerializeObject(this); } public static Anonymous FromJson(string data) { return Newtonsoft.Json.JsonConvert.DeserializeObject<Anonymous>(data); } }
知道是否有辦法迫使NJsonSchema根據集合中的命名對象集合名稱的單數化版本(例如,在這種情況下,我希望anonymous
類被命名爲類似Identifier
,因爲類des在一個名爲Identifiers
的收集中收集贓物)。我已經嘗試過使用自定義的TypeNameGenerator,但是該集合的名稱未提供給Generate
函數。