Exemple #1
0
        /// <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);
            }
        }
Exemple #2
0
        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);
        }