public void AutoMapperTestForMappingEngine()
        {
            Mapper.CreateMap<OriginalModel, NewModel>().ForMember(dest => dest.Id, opt => opt.Ignore());
            NewModel newModel;
            OriginalModel originalModel = new OriginalModel { Id = Guid.NewGuid(), Name = "MappingEngine" };

            newModel = Mapper.Map<OriginalModel, NewModel>(originalModel);

            Assert.AreNotEqual(newModel.Id, originalModel.Id);
            Assert.AreEqual(newModel.Name, originalModel.Name);

            //Mapper.Reset();
            Mapper.CreateMap<OriginalModel, NewModel>();
            newModel = Mapper.Map<OriginalModel, NewModel>(originalModel);

            Assert.AreEqual(newModel.Id, originalModel.Id);
            Assert.AreEqual(newModel.Name, originalModel.Name);

            //            ConfigurationStore mapStore = new ConfigurationStore(new TypeMapFactory()
            //, Mapper.Engine.ConfigurationProvider.GetMappers());

            //            MappingEngine engine = new MappingEngine(mapStore);
            //            mapStore.AddProfile(new CustomMappingProfile());
            //            newModel = engine.Map<OriginalModel, NewModel>(originalModel);

            //            Assert.AreEqual(newModel.Id, originalModel.Id);
            //            Assert.AreEqual(newModel.Name, originalModel.Name);
        }
        public void AutoMapperTestForConfiguration()
        {
            Mapper.Initialize(map =>
            {
                map.AddProfile<CustomMappingProfile>();

            });

            NewModel newModel;
            OriginalModel originalModel = new OriginalModel { Id = Guid.NewGuid(), OriginalName = "Configuration"};
            newModel = Mapper.Map<OriginalModel, NewModel>(originalModel);

            Assert.AreEqual(newModel.NewName, originalModel.OriginalName);
            Assert.AreEqual(newModel.Id, originalModel.Id);
        }
Beispiel #3
0
        public void UpdateForNotFoundModel_CanAddMissingEntityOnUpdate_ViewModelWasCreated()
        {
            //Arrange
            var model = OriginalModel.Clone();

            model.Name      = null;
            model.Timestamp = OriginalModel.Timestamp.AddHours(-1);

            //Act
            PublishEntityUpdatedEvent(model);

            //Assert
            ClassUnderTest.Items.Count.Should().Be(2);
            var viewModel = ClassUnderTest.Find(OriginalModel);

            viewModel.Should().NotBeNull();
        }
 /// <summary>
 /// 获取属性原始值内容
 /// </summary>
 /// <param name="propertyName"></param>
 /// <returns></returns>
 public object GetOrignalPropertyValue(string propertyName)
 {
     return(OriginalModel.GetType().GetProperty(propertyName).GetValue(OriginalModel));
 }