C# JSchema生成的属性注释格式
我正在使用Newtonsoft.Json.Schema生成模式。我拥有的一个类的属性之一是DateTime,但我们只关心该属性的日期组件。 我添加了一个JsonConverter来处理这个问题。因此,Json被正确转换,但由于日期格式的原因,在模式有效性期间失败 我的班级看起来像C# JSchema生成的属性注释格式,c#,json.net,C#,Json.net,我正在使用Newtonsoft.Json.Schema生成模式。我拥有的一个类的属性之一是DateTime,但我们只关心该属性的日期组件。 我添加了一个JsonConverter来处理这个问题。因此,Json被正确转换,但由于日期格式的原因,在模式有效性期间失败 我的班级看起来像 [DataContract] public class SomeClass { [DataMember] [JsonProperty("someDate")] [JsonConverter(typeo
[DataContract]
public class SomeClass
{
[DataMember]
[JsonProperty("someDate")]
[JsonConverter(typeof(ShortDateConverter))]
public DateTime SomeDate { get; set; }
}
public class ShortDateConverter : IsoDateTimeConverter
{
public ShortDateConverter()
{
base.DateTimeFormat = "yyyy-MM-dd";
}
}
当JSchemaGenerator生成它时,输出如下
{
"definitions": {
"SomeClass": {
"type": [
"object",
"null"
],
"properties": {
"someDate": {
"type": "string",
"format": "date-time"
}
}
}
}
}
{
"definitions": {
"SomeClass": {
"type": [
"object",
"null"
],
"properties": {
"someDate": {
"type": "string",
"format": "date"
}
}
}
}
}
但我希望格式是日期,类似这样的
{
"definitions": {
"SomeClass": {
"type": [
"object",
"null"
],
"properties": {
"someDate": {
"type": "string",
"format": "date-time"
}
}
}
}
}
{
"definitions": {
"SomeClass": {
"type": [
"object",
"null"
],
"properties": {
"someDate": {
"type": "string",
"format": "date"
}
}
}
}
}
是否可以使用任何支持的注释
[DataContract]
public class SomeClass
{
[DataMember]
[JsonProperty("someDate")]
[JsonConverter(typeof(ShortDateConverter))]
[Format("date")]
[JSchema(Format = "date"]
public DateTime SomeDate { get; set; }
}
是的,这是可能的: