2012-05-22 64 views
1

在我的Global.asax:Automapper的忽略选项设置目的地属性设置为null

 AutoMapper.Mapper.CreateMap<ViewModel, DataType>() 
      .ForMember(dest => dest.User, opt => opt.Ignore()); 

在我的MVC操作:

 AutoMapper.Mapper.Map(viewmodel, data); 

之前要调用的地图()函数,data.User不空值。立即在调用Map()之后,data.User现在为null,但是,如果我理解正确,Ignore()应完全忽略该属性并保持不变。任何想法可能会导致这种情况?

回答

1

我显然没有给任何人提供足够的信息来解决这个问题。

我的问题发生是因为我的数据模型是EF4实体,而我的视图模型有映射到映射到上述用户对象的外键的映射。一旦我们调用Map(),它将User实体重置为null。一旦我从我的ViewModel中删除了这个属性,一切都开始按预期工作。