MapsterMapper / Mapster

A fast, fun and stimulating object to object Mapper
MIT License
4.38k stars 331 forks source link

Meaning of mapping to an existing object? #430

Open zhenlei520 opened 2 years ago

zhenlei520 commented 2 years ago

Meaning of mapping to an existing object?

I used map to existing object, but I found that it doesn't preserve the value of the existing object during the mapping process, it initializes the value of the existing object, and when the existing object is a collection, the value of the existing object is the same as The response data is not the same, but I think their result should be the same

[TestMethod]
public void TestMapToExistingObject()
{
    List<UserDto> sources = new List<UserDto>()
    {
        new()
        {
            Name = "Jim",
            Age = 18
        }
    };

    List<UserDto> destination = new List<UserDto>();
    sources.Adapt(destination);
    Assert.IsTrue(destination.Count == sources.Count);//But it is not established at present, I think he is a bug
}

public class UserDto
{
    public string Name { get; set; }

    public int Age { get; set; }
}
sgf commented 2 years ago

update existing colliection i think Mapster need add new api something like ByField() (search some key to update) ,and insert new when not exists.