Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#匿名元组列表_C# - Fatal编程技术网

C#匿名元组列表

C#匿名元组列表,c#,C#,有没有人知道在C#中初始化匿名类型集合的方法比下面的方法更短(希望更优雅): new[] { new[] { "B", "Banana" }, new[] { "C", "Carrot" }, new[] { "D", "Durian" }, }.Select(x => new {Value = x[0], Text = x[1] }; 可以使用单个数组,如下所示: 警告:前方是可恶的代码 永远不要这样做 你差一点就成功了 var myCollection

有没有人知道在C#中初始化匿名类型集合的方法比下面的方法更短(希望更优雅):

new[] {
     new[] { "B", "Banana" },
     new[] { "C", "Carrot" },
     new[] { "D", "Durian" },
}.Select(x => new {Value = x[0], Text = x[1] };

可以使用单个数组,如下所示:

警告:前方是可恶的代码

永远不要这样做 你差一点就成功了

var myCollection = new[]
{
    new { Value = "B", Text = "Banana" },
    new { Value = "C", Text = "Carrot" },
    new { Value = "D", Text = "Durian" }
};

那不短。然而,这是最好的方法。我认为这是一个等价的选择(在可读性方面),但我想我正在努力消除代码中的冗余重复。哦,我明白了。。我选择了更优雅的而不是更短的,有点遗漏了这个问题。但是去掉字段的名称对我来说似乎是一种不必要的亵渎。。。imo重复经常是不错的。哈哈,好吧,是的,这是摆脱重复,你可以在自定义扩展方法中隐藏Linq调用。。。但是代码仍然像你说的那样糟糕。
var myCollection = new[]
{
    new { Value = "B", Text = "Banana" },
    new { Value = "C", Text = "Carrot" },
    new { Value = "D", Text = "Durian" }
};