You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TinyMapper:能否实现Id属性与ShipmentId属性的跨类映射?

使用TinyMapper实现不同名称属性的映射

当然可以!TinyMapper完全支持这种不同属性名称的映射需求,配置起来也很直观。我给你举个具体的实现例子:

首先,先定义你的两个类:

// 包含Id属性的源类
public class Order
{
    public int Id { get; set; }
    public string OrderNumber { get; set; }
}

// 包含ShipmentId属性的目标类
public class Shipment
{
    public int ShipmentId { get; set; }
    public string TrackingNumber { get; set; }
}

接下来,通过TinyMapper的Bind方法配置自定义映射规则,明确指定Id和ShipmentId的对应关系:

// 配置映射规则
TinyMapper.Bind<Order, Shipment>(config =>
{
    // 把源类的Id映射到目标类的ShipmentId
    config.Bind(src => src.Id, dest => dest.ShipmentId);
    // 如果还有其他属性需要自定义映射,也可以在这里继续添加
});

最后,调用Map方法完成对象映射:

// 创建源对象实例
var order = new Order { Id = 456, OrderNumber = "ORD-001" };

// 执行映射
var shipment = TinyMapper.Map<Shipment>(order);

// 此时 shipment.ShipmentId 就等于 456啦

如果后续有更多复杂的映射需求(比如类型转换、忽略某些属性等),TinyMapper也提供了对应的配置选项,灵活度很高。

内容的提问来源于stack exchange,提问作者Prince

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:49:04