如何在C#中将对象添加到匿名对象的数组属性中

我对C#的大部分研究工作都是在早期版本中进行的,我对这种代码不是很熟悉。我被提供了这个可笑的波纹管,但是我很难将产品动态地添加到匿名对象的items属性中。


  var body = new

     {

        items = new[] {

         new {

            name = "Product 1",

            value = 1000,

            amount = 2

             }


           },

        shippings = new[] {

           new {

            name = "Default Shipping Cost",

            value = 100

               }

             }

      };

这个想法是:


 var body = new { items =  new[]{ new { }  } };


        foreach(Modelos.Produto p in carrinho.Items)

        {

            body.items // add elements  { name = p.name }

        }


互换的青春
浏览 326回答 3
3回答

守着一只汪

如果您真的别无选择,强烈建议改用其他东西(List<T>等等),则可以使用该方法Array.Resize()来调整数组的大小并在其末尾添加一个新项目:var body = new { items =&nbsp; new[]{ new { }&nbsp; } };foreach(Modelos.Produto p in carrinho.Items){&nbsp; &nbsp; &nbsp;var array = body.items;&nbsp; &nbsp; &nbsp;Array.Resize(ref array, array.Length + 1);&nbsp; &nbsp; &nbsp;body.items[body.items.Length - 1] = new {}; // or whatever you want to add here}
打开App,查看更多内容
随时随地看视频慕课网APP