Details
-
Sub-task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
ignite-1.4
-
None
Description
Problem
User tries to get a field from an object. If field is an object, we return IBinaryObject which is correct. If field is enum we always try to deserialize it which is wrong because there could be no matching type in runtime.
Proposed solution
1) Introduce "BinaryEnum" class with the following methods:
- int TypeId() - get type ID
- int Ordinal() - get ordinal
- T deserialize() - deserialize using type ID -> class lookup.
- T deserialize(Type) - deserialize using provided Type. If (typeId != -1 && typeid(Type) != typeId), throw an exception.
Attachments
Issue Links
- is blocked by
-
IGNITE-1964 .NET: Write enum type ID if possible.
- Closed
- links to