首页 > 解决方案 > Ignite C# 瘦客户端中的字段 ID 冲突错误

问题描述

我正在尝试使用 C# 瘦客户端将实体存储在 Ignite-Cache 中。我有以下情况

public class A
    {
        DateTime StartDate { get; set; }
    }

    public class B:A
    {
        DateTime StartDate { get; set; }
    }

当我试图将 B 类的实例对象存储在 ignite 存储中时,它给了我以下错误。

IgniteThinClient.GetCache<Tkey, TValue>("CacheName")

它给了我以下错误

Apache.Ignite.Core.Binary.BinaryObjectException:'冲突的字段 ID [type=B,field1=StartDate,field2=StartDate,fieldId=104069929]'

类似问题链接

https://issues.apache.org/jira/browse/IGNITE-8588

Apache Ignite 2.1:从 2.0 升级后出现“冲突类型 ID”错误

如何关闭 C# 瘦客户端的二进制对象存储?这将有助于解决这个问题吗?

标签: c#ignitedistributed-caching

解决方案


请查看有关序列化的文档。您可以尝试IBinarizable在 B 中实现,并且只编写您关心的字段(或将两者放在不同的名称下)。你的旅费可能会改变。


推荐阅读