/// <summary> /// Creates X number of planets with X number of moons, all localized properties include all supported languages. /// </summary> private IEnumerable <Planet> CreatePlanets(int count) { for (var i = 0; i < count; i++) { var name = _localizer.SupportedLanguages.ToDictionary(k => k, k => $"Planet {i}"); var description = _localizer.SupportedLanguages.ToDictionary(k => k, k => $"Description {i}"); var planet = new Planet { PlanetId = i, Name = _localizer.Serialize(name), Description = _localizer.Serialize(description), ImageUrl = "https://...", Moons = new HashSet <Moon>() }; for (var j = 0; j < count; j++) { var moonName = _localizer.SupportedLanguages.ToDictionary(k => k, k => $"Moon {j}"); planet.Moons.Add(new Moon { MoonId = j, Name = _localizer.Serialize(moonName), Planet = planet, PlanetId = planet.PlanetId }); } yield return(planet); } }
public Task BindModelAsync(ModelBindingContext bindingContext) { var localizedValues = GetLocalizedValuesFromForm(bindingContext); var serializedContent = _localizer.Serialize(localizedValues); var valueProviderResult = new ValueProviderResult(serializedContent); bindingContext.ModelState.SetModelValue(bindingContext.ModelName, valueProviderResult); bindingContext.Result = ModelBindingResult.Success(valueProviderResult.FirstValue); return(Task.CompletedTask); }