使用 Mapster 从平面模型映射到 TypeAdapterConfig 中具有嵌套属性的模型

Using Mapster to map from flat model to a model with nested properties in TypeAdapterConfig

我想使用 EF Core 3 和 Mapster 从平面 dto 对象映射到具有相关子对象的对象。 即

_ = TypeAdapterConfig<NoteVM, Note>.NewConfig()
            .Map(d => d.Detail, s => s.Description)
            .Map(d => d.Id, s => s.NoteId)
            .Map(d => d.NoteTypeObject, s => s.NoteTypeString)
            .IgnoreNullValues(true);

其中 NoteTypeObject 是 table 上的现有记录。

因此在映射中,NoteType 对象必须在保存注释记录之前从数据库中检索并附加到注释记录。

这可以在配置部分完成,还是需要在映射之后但在将 Note 对象保存到 DB 之前完成?

_ = TypeAdapterConfig<NoteVM, Note>.NewConfig()
        .Map(d => d.Detail, s => s.Description)
        .Map(d => d.Id, s => s.NoteId)
         //get existing Id
        .Map(d => d.NoteTypeObjectId, s => GetNoteTypeId(s.NoteTypeString))//lookup 

        .IgnoreNullValues(true);

如果您能够添加引用 ID 而不是对象引用,则可以执行与上述类似的操作。