NET如何动态的将匿名类型添加到List?

本篇内容主要讲解“NET如何动态的将 匿名类型 添加到 List ?”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“NET如何动态的将 匿名类型 添加到 List ?”吧!

创新互联主要从事做网站、网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务聂拉木,10多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

 

咨询区

  • DHornpout

我可以像下面这样创建一个匿名类型。


var o = new { Id = 1, Name = "Foo" };

 

是否有办法可以将上面的匿名类型添加到 List 中 ?类似如下的伪代码:


var o = new { Id = 1, Name = "Foo" };
var o1 = new { Id = 2, Name = "Bar" };

List<var> list = new List<var>();
list.Add(o);
list.Add(o1);

 

或者下面这样:


List<var> list = new List<var>();

while (....)
{
    ....
    list.Add(new {Id = x, Name = y});
    ....
}

   

回答区

  • Jermismo

你可以这样试一试。


var o = new { Id = 1, Name = "Foo" };
var o1 = new { Id = 2, Name = "Bar" };

var array = new[] { o, o1 };

var list = array.ToList();

list.Add(new { Id = 3, Name = "Yeah" });

 

????,上面的代码对我来说有一些不美观,但没毛病。


  • Bassem

如果你使用的是 C#7 以上,建议用 ValueTuple 来替代匿名类型。


        static void Main(string[] args)
        {
            var list = new List<(int Id, string Name)>();

            list.Add((Id: 1, Name: "Foo"));
            list.Add((Id: 2, Name: "Bar"));
        }

 
  • Tom Dee

你可以创建一个 dynamic 类型的 List,如下代码所示:


List<dynamic> anons=new List<dynamic>();

foreach (Model model in models)
{
   var anon= new
   {
      Id = model.Id,
      Name=model.Name
   };

   anons.Add(anon);
}

   

点评区

从几位大佬的回答中可以总结出:

  • 使用dymanic。

  • 先设法初始化出带有匿名的 List,再图后续插入。

  • 使用更加语义化的 ValueTuple

到此,相信大家对“NET如何动态的将 匿名类型 添加到 List ?”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

文章题目:NET如何动态的将匿名类型添加到List?
文章转载:https://www.cdcxhl.com/article8/isjpop.html

成都网站建设公司_创新互联,为您提供企业建站面包屑导航网站建设域名注册网站制作企业网站制作

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

外贸网站建设