C# ';获取';使用自动映射时的逻辑

C# ';获取';使用自动映射时的逻辑,c#,asp.net-web-api,automapper,C#,Asp.net Web Api,Automapper,这是我的实体: public class CouponEntity { public int CouponId { get; set; } public int CompanyNumber { get; set; } public string Name { get; set; } public string FileName { get; set; } public string CompanySlug { get

这是我的实体:

public class CouponEntity
{
    public int CouponId { get; set; }
    public int CompanyNumber { get; set; }
    public string Name { get; set; }
    public string FileName { get; set; }

    public string CompanySlug
    {
        get
        {
            return COMMONCONSTANTS.URL_COMPANY + "/" + this.CompanyNumber;
        }
    }
}
以下是我的DTO:

public class CouponDto
{    
    [DataMember]
    public string CompanySlug { get; set; }
    [DataMember]
    public string FileName { get; set; }
    [DataMember]
    public string Name { get; set; }
}
我的问题是:使用
Mapper.Map(lstProducts)
会极大地影响性能吗

我从互联网上某个地方的汽车制造商那里得到了以下信息:

DTO是数据模型的严格投影。中没有业务逻辑 映射99%的“自动”-将自定义限制为最小优先LINQ 投影


那么,这是应该避免的吗?有没有更好的方法来实现这一点?

在这种情况下,使用AutoMapper不太可能对性能产生显著影响。 创建映射Mapper.CreateMap()确实会对性能产生影响,因此请确保在应用程序启动时只调用一次CreateMap()