private HeroType SetValues(HeroType model, Dictionary <string, string> keyValue) { var modelSerialized = model.ToBsonDocument(); foreach (var item in keyValue) { modelSerialized.SetElement(new BsonElement(item.Key, item.Value)); } try { return(BsonSerializer.Deserialize <HeroType>(modelSerialized)); } catch { var validation = new ValidationResult(); validation.Add(new ValidationError("Invalid values for update")); return(new HeroType() { ValidationResult = validation }); } }