1

在我的 Global.asax 中:

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

在我的 MVC 操作中:

        AutoMapper.Mapper.Map(viewmodel, data);

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

4

1 回答 1

1

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

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

于 2012-05-22T16:51:32.550 回答