如何使用 json.net 忽略类中的属性(如果为 null)

2023-12-04

我在用Json.NET将类序列化为 JSON。

我有这样的课程:

class Test1
{
    [JsonProperty("id")]
    public string ID { get; set; }
    [JsonProperty("label")]
    public string Label { get; set; }
    [JsonProperty("url")]
    public string URL { get; set; }
    [JsonProperty("item")]
    public List<Test2> Test2List { get; set; }
}

我想添加一个JsonIgnore()归因于Test2List仅当属性Test2List is null。如果它不为空,那么我想将它包含在我的 json 中。


使用的替代解决方案JsonProperty属性:

[JsonProperty(NullValueHandling=NullValueHandling.Ignore)]
// or
[JsonProperty("property_name", NullValueHandling=NullValueHandling.Ignore)]

// or for all properties in a class
[JsonObject(ItemNullValueHandling = NullValueHandling.Ignore)]

正如所见这个在线文档.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 json.net 忽略类中的属性(如果为 null) 的相关文章

  • 通过 Active Directory 搜索进行有效分页

    在 NET 中使用 Active Directory 搜索进行分页的有效方法是什么 在 AD 中进行搜索的方法有很多 但到目前为止我找不到如何有效地进行搜索 我希望能够表明Skip and Take参数并能够检索结果中与我的搜索条件匹配的记
  • 从值获取键 - Dictionary>

    我无法通过指定值来获取密钥 我实现这一目标的最佳方法是什么 var st1 new List
  • 创建动态对象

    如何动态创建对象 string columnNames EmpName EmpID PhoneNo List
  • 使用 C# 使用证书进行 SSL 客户端身份验证

    我需要创建一个 C 应用程序 该应用程序必须使用 SSL 向服务器发送 API 请求 我需要创建客户端身份验证 我已经拥有服务器 CA 证书 客户端证书 cer 客户端私钥 pem 和密码 我找不到有关如何创建客户端连接的示例 有人可以建议
  • 关闭模态后清除模态字段

    我有这个模式
  • 如何在 VS 2013 的立即窗口中执行 LINQ 和/或 foreach?

    在调试过程中探测当前状态时 立即窗口是非常有用的工具 我了解到 通过使用问号 人们可以在那里做更多的事情 如图所示在这篇文章中 https stackoverflow com questions 32934635 execute metho
  • 如何从 nuget 包中排除子目录和内容

    所以我有一个网站正在尝试打包用于 Octopus Deploy 我有以下文件夹结构 Web Views WantThis Dontwantthis WantThis1 WantThis2 lots more Scripts 我试图排除 Do
  • 隐藏树视图列表中的节点。在 C# 中

    我正在使用 VS 2005 C 正在处理一个未完成的 WinForm 我已将 XML 解析为树视图列表 但遇到了一些问题 我想知道是否有一种方法可以隐藏 过滤 删除名称中包含 this text 的某个节点 而不必依赖文本框 这就是我对这个
  • 根据值更改 DataGrid 单元格颜色

    我有一个 WPF 数据网格 我想要根据值使用不同的单元格颜色 我的 xaml 上有以下代码 Style TargetType DataGridCell 但不是只选择一个单元格而是选择所有行 我缺少什么 如果您尝试设置DataGrid Cel
  • 命名空间中不存在类型或命名空间名称 - 但命名空间确实存在

    我已经工作了很长时间没有任何问题的项目突然开始抛出错误 例如 The type or namespace name xxx does not exist in the namespace yyy are you missing an ass
  • ASP.NET MVC - HybridViewResult (ViewResult /PartialViewResult)

    是否可以构建一个依赖于 Ajax 请求或 Http 请求返回的混合 ViewResultPartialViewResult or ViewResult IsAjaxRequest gt 返回 PartialViewResult IsAjax
  • 当 MSB 位等于 0 时如何以十六进制格式打印它们

    我需要使用打印变量HEX格式 问题是当我的变量很小时 MSB 等于 0 因此不会打印它们 ex uint16 t var 10 0x000A h gt 我需要打印 000A 但无论我做什么它总是打印 A 我怎样才能让它发挥作用 您可以添加前
  • 我如何错误地使用 C 中的 round() 函数?

    我从中得到了意想不到的结果round and roundf 中的函数math h图书馆 这是示例代码 include
  • DateTimeFormat.AbbreviatedMonthNames 在月份名称末尾添加一个点

    昨晚 我们将 Web 服务层从物理 Windows 2008 r2 迁移到虚拟 Windows 2012 我们的日志中收到大量有关 DateTime 无效格式的事件 这很奇怪 因为我们仔细检查了区域设置 长话短说 CultureInfo G
  • 从多页 tiff 中提取帧 - C#

    有一个多页 tiff 我想从此 Tiff 文件中提取第 n 页 帧 n 并保存它 如果我的多页 tiff 有 3 帧 在我提取一页 帧后 我想留下 1 张图像有 2 页 帧 并且 1 张图像只有 1 页 帧 下面是一些代码 用于将多帧 ti
  • 在信号/槽处理期间删除 QObject

    我知道从槽处理中删除 QObject 可能会使应用程序崩溃 因为它可能有其他排队的事件 因此 我将使用 obj gt deleteLater 而不是使用 delete obj 据我所知 obj 等待处理所有排队的事件 然后 删除 obj Q
  • OpenXML 如何获取范围内的单元格

    请帮助我获取范围内的单元格 例如从 A 1 到 E 11 都是矩形单元格 目前我的理想是 Worksheet worksheet GetWorksheet document sheetName SheetData sheetData wor
  • 解析 SWIG 接口文件的结构属性

    这是我不久前问过的问题的延续 为通过参数返回的函数创建类型映射 https stackoverflow com questions 12793973 create a typemap for a function that returns
  • 使用 C++20 概念避免 std::function

    过去 当我想要回调作为函数参数时 我通常决定使用std function 在极少数情况下 我绝对从不使用捕获 我使用了typedef改为函数声明 因此 通常我的带有回调参数的声明看起来像这样 struct Socket void on re
  • 写入 Windows 7“预览”窗口区域

    如何使用 C 将控件写入或绘制到 Windows 7 预览区域 作为我正在讨论的示例 请在 Windows 7 中打开 Windows Media Player 并播放一首歌曲 播放歌曲时 最小化 Windows Media Player

随机推荐

  • jquery post codeigniter 验证

    我们使用 jquery 将表单 load 到 div 中 然后我们使用 jquery post 将该形式发送到 codeigniter 控制器 即 app post 然后我们希望 Codeigniter 执行验证 但不确定如何返回页面以显示
  • 为什么积压已满时 ServerSocket 连接不会被拒绝?

    无私的好奇心 在 Java 中 我监听一个套接字 积压为 1 ServerSocket ss new ServerSocket 4000 1 我在壳里跑 netcat localhost 4000 很多次 到目前为止 5 次 连接永远不会被
  • 如何检索必须在另一个线程上计算的值

    在许多情况下 线程 A 需要一个必须在线程 B 上计算的值 最常见的是 B EDT 考虑以下示例 String host SwingUtilities invokeAndWait new Runnable public void run h
  • 如何在 pyomo 中将积分定义为目标函数?

    我希望能够定义一个积分pyomo作为目标函数的一部分 我无法弄清楚积分需要什么样的表达式 这是我最好的猜测 model ConcreteModel model t ContinuousSet bounds 0 1 model y Var m
  • Java GIF 动画无法正确重画

    我正在尝试为 GIF 图像制作动画 动画可以 但画得不好 It shows like this non animated screenshot In the image the tail wags like this 正如您所看到的 图像重
  • 使用 WinPcap 获取原始 WiFi 数据包

    考虑简单的 C 代码发送单个原始数据包与WinPcap 与构建数据包标头相关的行以以下注释开头 假设在以太网上 将 mac 目标设置为 1 1 1 1 1 1 因此 您可能会猜测 为了发送原始 WiFi 数据包 您应该相应地更改此代码块 然
  • .java 文件中的包使类文件无法使用

    自从我上次做Java以来 已经太久了 我不记得为什么会发生以下情况 给定这个由标准 Maven 项目创建的文件 如下所示 Maven教程 package com mycompany app Hello world public class
  • 如何移动对话中的所有消息?

    我需要知道如何同时移动对话中的所有消息 我的宏当前显示为 Sub Archive Set ArchiveFolder Application GetNamespace MAPI GetDefaultFolder olFolderInbox
  • 如何扩展 KineticJS 形状

    对于 KineticJS 版本4 0 0或者更少的形状扩展了一个类并且可以通过以下方式扩展 var MyCircle Kinetic Circle extend init function config this super config
  • 尝试在 SSE 编程中使用 and 掩码添加 __m128

    我正在尝试使用比较操作的结果添加到 SSE 变量 我刚刚意识到 当使用 mm cmplt ps如果结果为真 则操作将返回 NAN 因为无法表示 0xffffffff 这对我来说没有用 m128 va m128 vb m128 result
  • .NET Core 3.1 始终加密

    使用 NET Core 3 1 和 SQL Always Encrypted 时出现以下错误 3 1支持这个吗 也许我在这里遗漏了一些东西 Keyword not supported column encryption setting 目前
  • 是否可以在 Android 中创建某种全局异常处理程序?

    我的应用程序包括一系列活动 用户必须以线性方式进行这些活动 假设这一系列活动如下所示 A 代表主菜单 B C D E 用户的操作过程如下 A gt B gt C gt D gt E 在这些活动中 用户必须输入数据或允许设备自动获取数据 例如
  • 使用 Symfony Messenger 异步发送电子邮件时如何翻译电子邮件?

    我将 Symfony 邮件程序配置为使用 Messenger 发送电子邮件 https symfony com doc current mailer html sending messages async 我的电子邮件有两种语言 我依靠请求
  • 将字符向量转换为时间?

    我想将以下字符向量转换为时间变量 times lt c 9 9 2015 16 03 13 9 9 2015 17 03 13 9 9 2015 17 56 38 9 9 2015 17 57 29 9 9 2015 19 52 55 9
  • 如何读取 FastCGI 请求的所有输出?

    我正在尝试使用 Rust 向 PHP 文件发出请求FastCGI协议 感谢以下答案 我得到了这段代码我之前的问题 use std os unix net UnixStream use std io Read Write use std st
  • 将 DIV 缩小到换行到其最大宽度的文本?

    将 div 收缩包装到某些文本非常简单 但是 如果文本由于最大宽度 例如 而换行到第二行 或更多行 则 DIV 的大小不会缩小到新换行的文本 它仍然扩展到断点 在本例中为最大宽度值 导致 DIV 右侧有相当多的边距 当想要将此 DIV 居中
  • Swift iOS 9 NSURLErrorDomain 错误 -1004

    我在 iOS 9 和 iOS 8 上使用 Swift 2 和 Alamofire 在 iOS 8 中 我对 API 的所有请求都工作正常 在 iOS 9 中 它们立即失败 并显示 1004 NSURLErrorDomain 并显示消息 无法
  • C#、Html 敏捷性、选择 div 标签内的每个段落

    例如 如何选择 div 标签中的每个段落 div p Hi p p Help Me Please p p Thankyou p 我已经下载了 Html Agility 并在我的程序中引用 我所需要的只是段落 可能有不同数量的段落 并且有大量
  • 将 jsonb 列值转换为 PostgreSQL 中的多列

    假设我在 PostgreSQL 中有一个表 其中包含以下列 CREATE TABLE sample id int jsonb jsonb date date 我插入了这两行 INSERT INTO sample id jsonb date
  • 如何使用 json.net 忽略类中的属性(如果为 null)

    我在用Json NET将类序列化为 JSON 我有这样的课程 class Test1 JsonProperty id public string ID get set JsonProperty label public string Lab