private static void CreateMultiHit <T>(MultiHitTuple tuple, JsonSerializer serializer, ICollection <IMultiGetHit <object> > collection) where T : class { var hit = new MultiGetHit <T>(); var reader = tuple.Hit.CreateReader(); serializer.Populate(reader, hit); var f = new FieldSelection <T>(); var source = tuple.Hit["fields"]; if (source != null) { f.Document = serializer.Deserialize <T>(source.CreateReader()); f.FieldValues = serializer.Deserialize <Dictionary <string, object> >(source.CreateReader()); hit.FieldSelection = f; } collection.Add(hit); }
private static void CreateMultiHit <T>(MultiHitTuple tuple, JsonSerializer serializer, ICollection <IMultiGetHit <object> > collection) where T : class { var hit = new MultiGetHit <T>(); var reader = tuple.Hit.CreateReader(); serializer.Populate(reader, hit); var contract = serializer.ContractResolver as SettingsContractResolver; var settings = contract.ConnectionSettings; var f = new FieldSelection <T>(settings); var source = tuple.Hit["fields"]; if (source != null) { ((IFieldSelection <T>)f).FieldValuesDictionary = serializer.Deserialize <Dictionary <string, object> >(source.CreateReader()); hit.FieldSelection = f; } collection.Add(hit); }