Example #1
0
        public void OnGet()
        {
            blackWidowInfo = new SuperheroModel
            {
                LastName             = "Romanoff",
                FirstName            = "Natasha",
                SuperName            = "Black Widow",
                HasSurvived          = false,
                ShowInfoWithSpoilers = true
            };

            ironManInfo = new SuperheroModel
            {
                LastName             = "Stark",
                FirstName            = "Tony",
                SuperName            = "Iron Man",
                HasSurvived          = false,
                ShowInfoWithSpoilers = true
            };

            thorInfo = new SuperheroModel
            {
                LastName             = "Odinson",
                FirstName            = "Thor",
                SuperName            = "Mighty Thor",
                HasSurvived          = true,
                ShowInfoWithSpoilers = true
            };
        }
        public void Add(SuperheroModel model)
        {
            var superhero = new Superhero(
                model.Name,
                model.Superpower,
                model.CombatPower);

            repository.Add(superhero);
            repository.CommitChanges();
        }
        public IActionResult Create([FromBody] SuperheroModel model)
        {
            if (model == null)
            {
                return(BadRequest());
            }

            _business.Add(model);

            return(Ok());
        }
Example #4
0
        void IService <SuperheroDTO> .Update(SuperheroDTO dto)
        {
            SuperheroModel source = _context.Superheroes.FirstOrDefault(f => f.Id == dto.Id);

            source.Jmeno       = dto.Jmeno;
            source.Prijmeni    = dto.Prijmeni;
            source.jtHeroPower = dto.SuperschopnostiIds.Select(sel => new jt_superhero_superpower
            {
                SuperheroId  = source.Id,
                SuperpowerId = sel
            }).ToList();

            var entries = _context.jtHeroPower.Where(w => w.SuperheroId == dto.Id);

            _context.jtHeroPower.RemoveRange(entries);

            _context.Update(source);
            _context.SaveChanges();
        }
Example #5
0
        void IService <SuperheroDTO> .Create(SuperheroDTO dto)
        {
            SuperheroModel destination = new SuperheroModel
            {
                Jmeno    = dto.Jmeno,
                Prijmeni = dto.Prijmeni
            };

            _context.Superheroes.Add(destination);
            _context.SaveChanges();

            foreach (var superpowerId in dto.SuperschopnostiIds)
            {
                var jtHeroPower = new jt_superhero_superpower
                {
                    SuperheroId  = destination.Id,
                    SuperpowerId = superpowerId
                };

                _context.jtHeroPower.Add(jtHeroPower);
                _context.SaveChanges();
            }
        }
Example #6
0
        public void DeserializeNestedDynamicObject()
        {
            // Use StandardMetadataProvider
            var svcProvider = new ServiceContainer();

            svcProvider.AddService(typeof(IMetadataProvider), this.MetadataProvider);
            svcProvider.AddService(typeof(ISerializerConfigService), new StandardSerializerConfigService(null));

            var metadataRepoFilePath = Path.Combine(Directory.GetCurrentDirectory(), @"MockData/SuperheroMetadata.json");

            var metadataRepo = new FlatFileRepo <DynamicObjectType>(
                metadataRepoFilePath,
                svcProvider.GetService(typeof(ISerializerConfigService)) as ISerializerConfigService,
                svcProvider
                );

            this.MetadataProvider.DynamicProvider.Load(metadataRepo);

            // Create an instance of a metahuman
            dynamic metaHuman = this.MetadataProvider.CreateInstance <DynamoPerson>(null,
                                                                                    "Headway.Dynamo.UnitTests.Mockdata.Metahuman",
                                                                                    null);

            Assert.IsNotNull(metaHuman);
            metaHuman.Superpower1 = "Invisibility";
            var sp1 = metaHuman.Superpower1;

            Assert.AreEqual(sp1, "Invisibility");
            metaHuman.FirstName = "Fred";
            metaHuman.Addr      = new Address()
            {
                Line1 = "123 Somewhere Pl",
                City  = "Tulsa",
                State = "OK"
            };
            metaHuman.ExtraStuff = "Stuff";

            // Create model that wraps the dynamo object
            var superHeroMdl = new SuperheroModel()
            {
                Superhero  = metaHuman,
                StatusCode = 2
            };

            // Serialize object
            var serializerConfigSvc = svcProvider.GetService(typeof(ISerializerConfigService)) as ISerializerConfigService;

            if (serializerConfigSvc == null)
            {
                throw new ServiceNotFoundException(typeof(ISerializerConfigService));
            }

            var jsonSettings = serializerConfigSvc.ConfigureJsonSerializerSettings(
                typeof(SuperheroModel),
                svcProvider);

            var jsonModel = JsonConvert.SerializeObject(superHeroMdl, jsonSettings);

            byte[] buffer;

            using (var stream = new MemoryStream())
            {
                using (StreamWriter sw = new StreamWriter(stream))
                {
                    sw.WriteLine(jsonModel);
                }
                buffer = stream.GetBuffer();
            }

            using (var stream = new MemoryStream(buffer))
            {
                using (StreamReader sr = new StreamReader(stream))
                {
                    dynamic superHeroMdl_2 = JsonConvert.DeserializeObject <SuperheroModel>(sr.ReadToEnd(), jsonSettings);
                    Assert.IsNotNull(superHeroMdl_2);
                    var sp1_2 = superHeroMdl_2.Superhero.Superpower1;
                    Assert.AreEqual(sp1_2, "Invisibility");
                }
            }
        }