LFlow/LFlow.Base/Utils/Mapper.cs

39 lines
874 B
C#

using LFlow.Base.Interfaces;
using Mapster;
namespace LFlow.Base.Utils;
/// <summary>
/// 映射器
/// </summary>
public static class Mapper
{
/// <summary>
/// 将一个对象映射到另一个对象
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="source"></param>
/// <returns></returns>
public static T? Map<T>(object source)
{
if (source == null)
{
return default;
}
return source.Adapt<T>();
}
/// <summary>
/// 将一个数据模型映射到另一个对象
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="model"></param>
/// <returns></returns>
public static T? MapTo<T>(this IDataModel model)
{
if (model == null)
{
return default;
}
return model.Adapt<T>();
}
}