转换操作
转换操作会更改输入对象的类型。
AsEnumerable
返回输入为 IEnumerable 的输入。
方法语法
// AsEnumerable
int[] numbers = { 1, 2, 3, 4, 5 };
var nums = numbers.AsEnumerable();
// nums: static type is IEnumerable<int>
查询语法
// Not applicable.
AsQueryable 已
将 IEnumerable 转换为 IQueryable。
方法语法
// AsQueryable
int[] numbers = { 1, 2, 3, 4, 5 };
var nums = numbers.AsQueryable();
// nums: static type is IQueryable<int>
查询语法
// Not applicable.
投
将集合的元素转换为指定的类型。
方法语法
// Cast
var numbers = new object[] { 1, 2, 3, 4, 5 };
var nums = numbers.Cast<int>();
// nums: static type is IEnumerable<int>
查询语法
// Use an explicitly typed range variable.
var numbers = new object[] { 1, 2, 3, 4, 5 };
var nums = from int n in numbers select n;
// nums: static type is IEnumerable<int>
OfType
过滤值,具体取决于它们转换为指定类型的能力。
方法语法
// OfType
var objects = new object[] { 1, "one", 2, "two", 3, "three" };
var numbers = objects.OfType<int>();
// nums = { 1, 2, 3 }
查询语法
// Not applicable.
ToArray
将集合转换为数组。
方法语法
// ToArray
var numbers = Enumerable.Range(1, 5);
int[] array = numbers.ToArray();
// array = { 1, 2, 3, 4, 5 }
查询语法
// Not applicable.
ToList
将集合转换为列表。
方法语法
// ToList
var numbers = Enumerable.Range(1, 5);
List<int> list = numbers.ToList();
// list = { 1, 2, 3, 4, 5 }
查询语法
// Not applicable.
ToDictionary
基于键选择器功能将元素放入字典中。
方法语法
// ToDictionary
var numbers = new int[] { 1, 2, 3 };
var dict = numbers.ToDictionary(n => n.ToString());
// dict = { "1" => 1, "2" => 2, "3" => 3 }
查询语法
// Not applicable.