Map结构映射,避免每一个字段赋值

var query1 = (from fore in forecastShippingDate
                              join ship in shipOutOfStock
                              on fore.Id equals ship.ForecastShippingDateId
                              join detail in shipOutOfStockDetail
                              on ship.Id equals detail.ShipOutOfStockId
                              select MapToShipOutOfStockDetailAndMaterielCodeListDto(ship, detail, fore)
                                       ).ToList();
private static ShipOutOfStockAndDetailOutpt MapToShipOutOfStockDetailAndMaterielCodeListDto(ShipOutOfStock sh, ShipOutOfStockDetail shde, ForecastShippingDate fore)
        {
            IObjectMapper objectMapper = IocManager.Instance.Resolve<IObjectMapper>();
            ShipOutOfStockAndDetailOutpt res = objectMapper.Map<ShipOutOfStockAndDetailOutpt>(sh);
            res.MaterielCode = shde.SettlementMaterielCode;
            res.WLBerthingTime = fore.WLBerthingTime.Value;


            return res;
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中,我们可以通过指定映射来给对应字段赋值。具体来说,我们可以创建一个Map对象,其中的key-value对分别表示字段名和对应的值。 首先,我们需要确保类的字段名和Map中的key保持一致。然后,可以通过遍历Map的方式,将字段值赋给对应的字段。 例如,假设我们有一个类,其中包含字段name和age,我们想要通过指定映射来给这些字段赋值。我们可以这样做: ```java class Person { String name; int age; } public class Main { public static void main(String[] args) { Map<String, Object> map = new HashMap<>(); map.put("name", "John"); map.put("age", 30); Person person = new Person(); // 遍历map,将值赋给对应字段 for (Map.Entry<String, Object> entry : map.entrySet()) { String key = entry.getKey(); Object value = entry.getValue(); switch (key) { case "name": person.name = (String) value; break; case "age": person.age = (int) value; break; // 可以根据需要添加其他字段赋值逻辑 } } // 输出字段值 System.out.println("Name: " + person.name); System.out.println("Age: " + person.age); } } ``` 在上面的示例中,我们创建了一个Map对象,并将字段名和对应的值放入其中。然后,我们创建了一个Person对象,并使用遍历Map的方式来给字段赋值。最后,我们输出了字段的值,可以看到成功通过指定映射赋值给了对应字段。 需要注意的是,这种通过指定映射赋值的方式需要手动编写逻辑来处理不同字段赋值操作,如果字段较多,可能会比较繁琐。可以根据实际情况选择是否使用这种方式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值