Gabms
Gabms

Reputation: 83

How can add items to a class with other class inside

I have these elements class:

public class DataclassModeloSD
{
    public T001 tablaT001 { get; set; }
    public T001W tablaT001W { get; set; }
    public TSPAT tablaTSPAT { get; set; }
}

and other classes:

public class T001
{
    public string BUKRS { get; set; }
    public string BUTXT { get; set; }
}

public class T001W
{
    public string WERKS { get; set; }
    public string NAME1 { get; set; }
}

public class TSPAT
{
    public string SPART { get; set; }
    public string VTEXT { get; set; }
}

Please, how can add elements to List<DataclassModeloSD>? I want to fill a list for return in JSON format.

Thanks.

Upvotes: 0

Views: 62

Answers (2)

TheGeneral
TheGeneral

Reputation: 81573

you can do it in one statement like this,

var list = new List<DataclassModeloSD>()
   {
      new DataclassModeloSD()
         {
            tablaT001 = new T001()
               {
                  BUKRS = "asdasd",
                  BUTXT = "dassdf"
               },
            tablaT001W = new T001W()
               {
                  NAME1 = "asdfsdf",
                  WERKS = "sdfsdf'
               },
            tablaTSPAT = new TSPAT()
               {
                  SPART = "dsfsdf",
                  VTEXT = "sdfdfg"
               }
         },
      new DataclassModeloSD()
         {
            tablaT001 = new T001()
               {
                  BUKRS = "hjkhjk",
                  BUTXT = "dfg"
               },
            tablaT001W = new T001W()
               {
                  NAME1 = "ghjhj",
                  WERKS = "jkl'
               },
            tablaTSPAT = new TSPAT()
               {
                  SPART = "fgh",
                  VTEXT = "dfg"
               }
         }
   };

or another way like this

var tablaT001 = new T001()
   {
      BUKRS = "asdasd",
      BUTXT = "dassdf"
   };
var tablaT001W = new T001W()
   {
      NAME1 = "asdfsdf",
      WERKS = "sdfsdf'
   };
var tablaTSPAT = new TSPAT()
   {
      SPART = "dsfsdf",
      VTEXT = "sdfdfg"
   };

var dataclassModeloSD = new DataclassModeloSD();
dataclassModeloSD.tablaT001 = tablaT001;
dataclassModeloSD.tablaT001W = tablaT001W;
dataclassModeloSD.tablaTSPAT = tablaTSPAT;

list.Add(dataclassModeloSD);

or another exmaple adding multiple items

var modeloSD1 = new DataclassModeloSD()
     {
        tablaT001 = new T001()
           {
              BUKRS = "asdasd",
              BUTXT = "dassdf"
           },
        tablaT001W = new T001W()
           {
              NAME1 = "asdfsdf",
              WERKS = "sdfsdf'
           },
        tablaTSPAT = new TSPAT()
           {
              SPART = "dsfsdf",
              VTEXT = "sdfdfg"
           }
     };
var modeloSD2 = new new DataclassModeloSD()
     {
        tablaT001 = new T001()
           {
              BUKRS = "hjkhjk",
              BUTXT = "dfg"
           },
        tablaT001W = new T001W()
           {
              NAME1 = "ghjhj",
              WERKS = "jkl'
           },
        tablaTSPAT = new TSPAT()
           {
              SPART = "fgh",
              VTEXT = "dfg"
           }
     };

list.Add(modeloSD1);
list.Add(modeloSD2);

However Note : this is all very trivial stuff and there are lots of resources for this level of coding. Please be sure to search the internet as you will learn a lot more than asking questions at this point in your understand.

Upvotes: 2

Matheus Cuba
Matheus Cuba

Reputation: 2156

I think you mean create a new List<DataclassModeloSD> right? In this case you would have to create the elements that would be in your list and use the method Add(). Something like this:

var yourList = new List<DataclassModeloSD>();

yourList.Add(new DataclassModeloSD(){
    tablaT001 = new T001(){
        BUKRS = "Foo",
        BUTXT = "Bar"
    },
    tablaT001W = new T001W(){
        WERKS= "Foo",
        NAME1 = "Bar"
    },
    tablaTSPAT = new TSPAT(){
        SPART = "Foo",
        VTEXT = "Bar"
    }
});

Upvotes: 2

Related Questions