本篇内容主要讲解“NET如何动态的将 匿名类型 添加到 List ?”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“NET如何动态的将 匿名类型 添加到 List ?”吧!
我可以像下面这样创建一个匿名类型。
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});
....
}
你可以这样试一试。
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" });
????,上面的代码对我来说有一些不美观,但没毛病。
如果你使用的是 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"));
}
你可以创建一个 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 ?”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。