我正在从Oracle数据库获取数据并创建供内部使用的API。一些类(为简洁起见,简称:)>
CustomerOrderTab
Public partial class CustomerOrderTab Public string OrderNo { get; set; } [ForeignKey("CustomerMV")] public string CustomerNo { get; set; } public List<CustomerOrderLineTab> CustomerOrderLines { get; set; } public List<CustomerOrderChargeTab> CustomerOrderCharge { get; set; } public List<ShipmentOrderLineTab> ShipmentOrderLines { get; set; } public CustomerMV CustomerMV { get; set; }
CustomerOrderDTO
Public class OrderDTO public string OrderNo { get; set; } public string CustomerName { get; set; } public List<OrderLinesDTO> OrderLines { get; set; } public List<OrderChargesDTO> OrderCharges { get; set; } public List<ShipmentOrderLinesDTO> ShipmentOrderLines { get; set; }
ShipmentOrderLineTab
public partial class ShipmentOrderLineTab public decimal ShipmentId { get; set; } [ForeignKey("CustomerOrderTab")] public string OrderNo { get; set; } public ShipmentTab Shipment { get; set; }
ShipmentOrderLineDTO
public class ShipmentOrderLinesDTO public decimal ShipmentId { get; set; } public string OrderNo { get; set; } public ShipmentTab MyShipment { get; set; }
ShipmentTab
public partial class ShipmentTab [ForeignKey("ShipmentOrderLineTab")] public decimal ShipmentId { get; set; } public string ShipperAddress1 { get; set; } public string ShipperAddress2 { get; set; } public List<ShipmentHandlingUnitTab> ShipmentHandlingUnits { get; set; }
ShipmentDTO
public class ShipmentDTO public decimal ShipmentId { get; set; } public string ShipViaCode { get; set; } public string ShipmentPayer { get; set; } public List<ShipmentHandlingUnitDTO> ShipmentHandlingUnitDTOs { get; set; }
此作品:
var orderLines = from o in _context.CustomerOrderTab .Where(o => o.OrderNo == orderno) select new OrderDTO() { OrderNo = o.OrderNo, CustomerName = o.CustomerMV.CustomerName, This is a child of the order ShipmentOrderLines = o.ShipmentOrderLines This works .Select(ob => new ShipmentOrderLinesDTO { ShipmentId = ob.ShipmentId, OrderNo = ob.OrderNo, MyShipment = ob.Shipment Adding this does not work .Select(y => new ShipmentDTO The error says that ShipmentTab Doesn’t have a definition for Select { } }).ToList()
货件是ShipmentOrderLine的子项(每行只有一个货件)
[ShipmentOrderLine是CustomerOrder的子项(每个订单可以有很多行)
我认为问题在于,每条线只装一批,但是我尝试了很多事情,无法将其映射到我的DTO。
我正在从Oracle数据库获取数据并创建供内部使用的API。其中一些类(为简洁起见已缩短):CustomerOrderTab公共局部类CustomerOrderTab Public ...
修复您的模型: