根據我們當前的代碼實現,我們需要將System.Data.DataTable存儲在緩存中。它在使用HttpRuntime.Cache時可以正常工作,但不能在Apache Ignite中使用。 以下是代碼片段。如何在Apache Ignite中存儲DataTable?
IIgnite ignite = Ignition.Start();
ICache<string, object> cache = ignite.GetOrCreateCache<string, object>("cache");
DataTable table = new DataTable();
cache.Put("1", table);
這將引發「無法投型「Apache.Ignite.Core.Impl.Binary.BinaryWriter爲鍵入‘System.IConvertible’的對象」的錯誤。
基於https://apacheignite-net.readme.io/docs/serialization, 的信息DataTable實現ISerializable並具有Serializable屬性。它應該能夠序列化。我不知道爲什麼我得到這個錯誤。有什麼想法嗎?
環境:Ignite.NET 2.1時,Visual Studio 2015年