using Mapster;
/// <summary>
/// 对象映射
/// </summary>
public static class MapperExtension
{
/// <summary>
/// 对象属性映射
/// </summary>
/// <typeparam name="TSource">原类型</typeparam>
/// <typeparam name="TResult">转换后的类型</typeparam>
/// <param name="data">当前类型数据</param>
/// <returns></returns>
public static TResult Mapper<TSource, TResult>(this TSource data) where TSource : class
{
return data.Adapt<TResult>();
}
/// <summary>
/// 对象属性映射
/// </summary>
/// <typeparam name="TSource">原类型</typeparam>
/// <typeparam name="TResult">转换后的类型</typeparam>
/// <param name="data">当前类型数据</param>
/// <param name="config">配置信息</param>
/// <returns></returns>
public static TResult Mapper<TSource, TResult>(this TSource data, TypeAdapterConfig config) where TSource : class
{
return data.Adapt<TResult>(config);
}
/// <summary>
/// 对象集合属性映射
/// </summary>
/// <typeparam name="TSource">原类型</typeparam>
/// <typeparam name="TResult">转换后的类型</typeparam>
/// <param name="data">当前类型数据</param>
/// <returns></returns>
public static IEnumerable<TResult> MapperList<TSource, TResult>(this IEnumerable<TSource> data) where TSource : class
{
return data.Adapt<IList<TResult>>();
}
}