温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2021-07-12 15:04:05 阅读:168 作者:chen 栏目:编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

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

 

咨询区

  • 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((Id1, Name"Foo"));            list.Add((Id2, 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 ?”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

原文链接:https://my.oschina.net/u/135083/blog/5008954

net
AI

开发者交流群×