중첩 된 클래스 개체에 대한 DataTable

레이몬드

DataTable의 데이터로 채우려는이 모델이 있으므로 모델을 JSON으로 직렬화 할 수 있습니다. 그러나 OrderDetailsList에 나열된 OrderDetails 클래스에 주문 항목을 채우는 올바른 방법을 찾을 수없는 것 같습니다.

지금까지 이것이 제가 가진 것입니다.

어떤 도움이라도 대단히 감사합니다.

감사합니다!

암호

List<Order> orders = new List<Order>();

orders = (from DataRow order in DTOrders.Rows
          select new Order()
          {
               ClientPO = "123456",
               MerchantOrderID = "123456",
               OrderDetailsList = (from DataRow orderDetail in DTOrderItems.AsEnumerable()
               where orderDetail["Order Number"].ToString() == order["Order Number"].ToString()
               select new OrderItem()
               {
                    //ClientJobRefDetail etc...
               }).ToList()
          }).ToList();

모델

    public partial class OrderModel
    {
        [JsonProperty("Order")]
        public Order Order { get; set; }
    }

    public partial class Order
    {
        [JsonProperty("ClientPO")]
        [JsonConverter(typeof(ParseStringConverter))]
        public long ClientPo { get; set; }

        [JsonProperty("MerchantOrderID")]
        [JsonConverter(typeof(ParseStringConverter))]
        public long MerchantOrderId { get; set; }

        [JsonProperty("OrderDetailsList")]
        public OrderDetailsList OrderDetailsList { get; set; }
    }

    public partial class OrderDetailsList
    {
        [JsonProperty("OrderDetails")]
        public List<OrderDetail> OrderDetails { get; set; }
    }

    public partial class OrderDetail
    {
        [JsonProperty("ClientJobRefDetail")]
        public string ClientJobRefDetail { get; set; }

        [JsonProperty("Product")]
        [JsonConverter(typeof(ParseStringConverter))]
        public long Product { get; set; }

        [JsonProperty("Qty")]
        [JsonConverter(typeof(ParseStringConverter))]
        public long Qty { get; set; }

        [JsonProperty("ShipMethod")]
        [JsonConverter(typeof(ParseStringConverter))]
        public long ShipMethod { get; set; }

        [JsonProperty("ShipTo")]
        public string ShipTo { get; set; }

        [JsonProperty("ShipToPerson")]
        public string ShipToPerson { get; set; }

        [JsonProperty("ShipToAddress1")]
        public string ShipToAddress1 { get; set; }

        [JsonProperty("ShipToCity")]
        public string ShipToCity { get; set; }

        [JsonProperty("ShipToState")]
        public string ShipToState { get; set; }

        [JsonProperty("ShipToZip")]
        [JsonConverter(typeof(ParseStringConverter))]
        public long ShipToZip { get; set; }

        [JsonProperty("ShipToPhone")]
        public string ShipToPhone { get; set; }

        [JsonProperty("ShipToEmail")]
        public string ShipToEmail { get; set; }

        [JsonProperty("ExternalArtURL")]
        public Uri ExternalArtUrl { get; set; }
    }

클래스가 JSON으로 직렬화 된 후 원하는 출력

{
  "Order": {
    "ClientPO": "999999",
    "MerchantOrderID": "123456",
    "OrderDetailsList": {
      "OrderDetails": [
    {
      "ClientJobRefDetail": "LINE123456",
      "Product": "369",
      "Qty": "1",
      "ShipMethod": "60",
      "ShipTo": "John Doe",
      "ShipToPerson": "John Doe",
      "ShipToAddress1": "120 9th Ave",
      "ShipToCity": "Longmont",
      "ShipToState": "CO",
      "ShipToZip": "80501",
      "ShipToPhone": "5055555555",
      "ShipToEmail": "[email protected]",
      "ExternalArtURL": "http://example.com/print_ready_image.jpg"
    },
    {
      "ClientJobRefDetail": "LINE78910",
      "Product": "521",
      "Qty": "2",
      "ShipMethod": "60",
      "ShipTo": "John Doe",
      "ShipToPerson": "John Doe",
      "ShipToAddress1": "120 9th Ave",
      "ShipToCity": "Longmont",
      "ShipToState": "CO",
      "ShipToZip": "80501",
      "ShipToPhone": "5055555555",
      "ShipToEmail": "[email protected]",
      "ExternalArtURL": "http://example.com/print_ready_image.jpg"
    }
      ]
    }
  }
}
브라이언

새 OrderDetailsList를 만들어야합니다.

orders = (from DataRow order in DTOrders.Rows
select new Order()
{
    ClientPo = 123456,
    MerchantOrderId = 123456,
    OrderDetailsList = new OrderDetailsList()
    {
        OrderDetails = (from DataRow orderDetail in DTOrderItems.AsEnumerable()
                        where orderDetail["Order Number"].ToString() == order["Order Number"].ToString()
                        select new OrderDetail()
                        {
                            //ClientJobRefDetail etc...
                        }).ToList()
    }
}).ToList();

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

중첩 된 클래스에 대한 우려

분류에서Dev

중첩 된 JSON에 대한 모델 클래스

분류에서Dev

중첩 된 필드에 대한 DevExpress JavaScript 개체에 액세스

분류에서Dev

Modelica의 중첩 된 대체 가능 클래스에서 클래스 확장

분류에서Dev

중첩 된 Python 클래스 및 부모의 메서드에 대한 액세스

분류에서Dev

동일한 이름의 중첩 된 클래스에서 대체 규칙에 스타일러스 믹스 인?

분류에서Dev

클래스 내에 중첩 된 열거 형에 대한 연산자 정의

분류에서Dev

일반 부모 클래스 내에 중첩 된 클래스 생성자에 대한 함수 참조

분류에서Dev

중첩 된 개체 그래프에서 최대 volgnr 얻기

분류에서Dev

중첩 된 클래스에 대한 모든 개인 필드 및 해당 getter / setter 찾기

분류에서Dev

중첩 된 getElementsByTagName에 대한 jQuery 대체

분류에서Dev

스파크 콩 인코더는 중첩 된 클래스에 대한 잘못된 값을 매핑

분류에서Dev

중첩 된 도메인 개체에 대한 DTO 클래스를 디자인하는 방법은 무엇입니까?

분류에서Dev

JUnit4의 정적 내부 테스트 클래스에 대한 중첩 된 테스트 설정

분류에서Dev

중첩 된 객체에 대한 MongoDB 고유 인덱스

분류에서Dev

API에서 반환 된 깊이 중첩 된 개체에 대한 Typescript 인터페이스 추가

분류에서Dev

클래스 내에서 중첩 된 개체 함수를 분리하는 방법

분류에서Dev

중첩 된 개체에 대한 쿼리 집합 순서

분류에서Dev

중첩 된 개체에 대한 Terraform 루프

분류에서Dev

많이 중첩 된 개체에 대한 TypeScript 유형

분류에서Dev

mongodb의 중첩 된 개체에 대한 그룹 쿼리

분류에서Dev

중첩 된 개체에 대한 ng-repeat 요소

분류에서Dev

중첩 된 개체에 대한 ng-repeat 요소

분류에서Dev

중첩 된 개체에 대한 부울 필터

분류에서Dev

중첩 된 형식의 자식 개체에 대한 NoMethodError

분류에서Dev

중첩 된 클래스에서 this $ 0에 대한 참조를 어떻게 복구합니까?

분류에서Dev

중첩 된 클래스 템플릿에 대해 operator << 오버로드

분류에서Dev

중첩 된 클래스 템플릿에 대해 operator << 오버로드

분류에서Dev

Javascript ES2017 : 클래스에서 중첩 된 비동기 대기

Related 관련 기사

  1. 1

    중첩 된 클래스에 대한 우려

  2. 2

    중첩 된 JSON에 대한 모델 클래스

  3. 3

    중첩 된 필드에 대한 DevExpress JavaScript 개체에 액세스

  4. 4

    Modelica의 중첩 된 대체 가능 클래스에서 클래스 확장

  5. 5

    중첩 된 Python 클래스 및 부모의 메서드에 대한 액세스

  6. 6

    동일한 이름의 중첩 된 클래스에서 대체 규칙에 스타일러스 믹스 인?

  7. 7

    클래스 내에 중첩 된 열거 형에 대한 연산자 정의

  8. 8

    일반 부모 클래스 내에 중첩 된 클래스 생성자에 대한 함수 참조

  9. 9

    중첩 된 개체 그래프에서 최대 volgnr 얻기

  10. 10

    중첩 된 클래스에 대한 모든 개인 필드 및 해당 getter / setter 찾기

  11. 11

    중첩 된 getElementsByTagName에 대한 jQuery 대체

  12. 12

    스파크 콩 인코더는 중첩 된 클래스에 대한 잘못된 값을 매핑

  13. 13

    중첩 된 도메인 개체에 대한 DTO 클래스를 디자인하는 방법은 무엇입니까?

  14. 14

    JUnit4의 정적 내부 테스트 클래스에 대한 중첩 된 테스트 설정

  15. 15

    중첩 된 객체에 대한 MongoDB 고유 인덱스

  16. 16

    API에서 반환 된 깊이 중첩 된 개체에 대한 Typescript 인터페이스 추가

  17. 17

    클래스 내에서 중첩 된 개체 함수를 분리하는 방법

  18. 18

    중첩 된 개체에 대한 쿼리 집합 순서

  19. 19

    중첩 된 개체에 대한 Terraform 루프

  20. 20

    많이 중첩 된 개체에 대한 TypeScript 유형

  21. 21

    mongodb의 중첩 된 개체에 대한 그룹 쿼리

  22. 22

    중첩 된 개체에 대한 ng-repeat 요소

  23. 23

    중첩 된 개체에 대한 ng-repeat 요소

  24. 24

    중첩 된 개체에 대한 부울 필터

  25. 25

    중첩 된 형식의 자식 개체에 대한 NoMethodError

  26. 26

    중첩 된 클래스에서 this $ 0에 대한 참조를 어떻게 복구합니까?

  27. 27

    중첩 된 클래스 템플릿에 대해 operator << 오버로드

  28. 28

    중첩 된 클래스 템플릿에 대해 operator << 오버로드

  29. 29

    Javascript ES2017 : 클래스에서 중첩 된 비동기 대기

뜨겁다태그

보관