除了使用 LINQ 查询语句还有其他的吗
时间: 2024-03-13 16:45:07 浏览: 14
是的,还有另外一种方法可以获取最后一个固定磁盘。可以使用 `DriveInfo.GetDrives()` 获取到所有的磁盘,然后遍历数组,找到最后一个固定磁盘,代码如下:
```csharp
DriveInfo[] drives = DriveInfo.GetDrives();
DriveInfo lastFixedDrive = null;
for (int i = drives.Length - 1; i >= 0; i--)
{
if (drives[i].DriveType == DriveType.Fixed)
{
lastFixedDrive = drives[i];
break;
}
}
if (lastFixedDrive == null)
{
MessageBox.Show("未找到固定磁盘!");
Close();
return;
}
var rootDir = lastFixedDrive.RootDirectory;
```
这段代码的逻辑是从最后一个磁盘开始遍历,找到最后一个固定磁盘后终止循环。如果没有找到固定磁盘,则弹出提示框并关闭程序。
这种方法的实现比较直接,但是相对于使用 LINQ 查询语句来说稍微麻烦一些。
相关问题
使用linq语句查询出所有学生的年龄
假设有一个名为`students`的`List<Student>`,其中`Student`类包含`Name`和`Age`属性,可以使用以下LINQ语句查询所有学生的年龄:
```csharp
var ages = students.Select(s => s.Age);
```
这将返回一个类型为`IEnumerable<int>`的集合,其中包含所有学生的年龄。如果需要将结果转换为数组,可以使用`ToArray()`方法:
```csharp
var agesArray = students.Select(s => s.Age).ToArray();
```
linq 列表查询语句
LINQ 是 .NET 框架中的一种语言集成查询,可以用于各种数据源。下面是一个简单的 LINQ 查询列表的示例:
```csharp
var list = new List<int> { 1, 2, 3, 4, 5 };
var result = from item in list
where item % 2 == 0
select item;
foreach (var item in result)
{
Console.WriteLine(item);
}
```
上述代码将从列表中选择所有偶数,并打印它们。在这个示例中,`from` 子句指定数据源(`list`),`where` 子句指定筛选条件(选择偶数),并且 `select` 子句指定要选择的数据(`item`)。最后,使用 `foreach` 循环来遍历查询结果并输出。