Vladimir Ozerov created IGNITE-1780: ---------------------------------------
Summary: .Net: DateTime is seialized incorrectly. Key: IGNITE-1780 URL: https://issues.apache.org/jira/browse/IGNITE-1780 Project: Ignite Issue Type: Task Components: interop Affects Versions: ignite-1.4 Reporter: Vladimir Ozerov Priority: Critical Fix For: 1.5 Add the following test to PortableSelfTest.cs: {code} [Test] public void TestWriteDate() { DateTime time = DateTime.Now; DateTime timeUtc = DateTime.UtcNow; Assert.AreEqual(_marsh.Unmarshal<DateTime>(_marsh.Marshal(time)), time); Assert.AreEqual(_marsh.Unmarshal<DateTime>(_marsh.Marshal(timeUtc)), timeUtc); } {code} Observe that it fails becuase we loose DateTimeKind. DateTime must be serialized in portable form only in two cases: 1) IPortableWriter.WriteDate() 2) IPortableWriter.WriteDateArray() In all other cases it should be serialized in some other form. E.g., we can introduce new wrapper type ".NET-specific" and wrap DateTime, Collections, Arrays (IGNITE-1779) in it. -- This message was sent by Atlassian JIRA (v6.3.4#6332)