/// <summary> /// Mark edmtype to apply the serialization on /// </summary> /// <param name="edmType"></param> /// <returns></returns> public override ODataEdmTypeSerializer GetEdmTypeSerializer(Microsoft.OData.Edm.IEdmTypeReference edmType) { // Support for Entity types AND Complex types if (edmType.Definition.TypeKind == EdmTypeKind.Entity || edmType.Definition.TypeKind == EdmTypeKind.Complex) { return(_propertiesSerializer); } if (edmType.Definition.TypeKind == EdmTypeKind.Collection) { if (edmType.Definition.AsElementType().IsDecimal() || edmType.Definition.AsElementType().IsString()) { return(_ignoreEmptyListsCollectionSerializer); } return(_ignoreEmptyListsSerializer); } var result = base.GetEdmTypeSerializer(edmType); return(result); }
/// <inheritdoc/> public override ODataEdmTypeDeserializer GetEdmTypeDeserializer(Microsoft.OData.Edm.IEdmTypeReference edmType) { return(Instance.GetEdmTypeDeserializer(edmType)); }