You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 9.0中HybridCache如何忽略JSON序列化的Null值?

.NET 9 HybridCache 配置JSON序列化忽略Null属性

HybridCache 默认使用 System.Text.Json 进行序列化,要实现忽略值为Null的属性,只需替换它的序列化器实例,传入自定义配置的 JsonSerializerOptions 即可,和你配置MVC时的逻辑一致。

修改后的配置代码如下:

services.AddHybridCache(options =>
{
    options.MaximumPayloadBytes = 1024 * 1024;
    options.MaximumKeyLength = 1024;
    options.DefaultEntryOptions = new HybridCacheEntryOptions
    {
        Expiration = TimeSpan.FromDays(7),
        LocalCacheExpiration = TimeSpan.FromDays(7)
    };

    // 配置JSON序列化忽略Null属性
    var jsonSerializerOptions = new JsonSerializerOptions
    {
        DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull
        // 可按需添加其他序列化配置,比如 PropertyNameCaseInsensitive = true 等
    };

    // 替换HybridCache的默认序列化器
    options.Serializer = new SystemTextJsonSerializer(jsonSerializerOptions);
});

核心逻辑是通过 SystemTextJsonSerializer 包装自定义的 JsonSerializerOptions,赋值给HybridCache的 Serializer 属性,就能让缓存序列化时自动忽略Null值属性。

内容的提问来源于stack exchange,提问作者fantastischIdee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 11:32:03