2013-10-29 3 views
0

드라이브 정보를 얻고 AvalableFreeSpace으로 정렬하려면 어떻게해야합니까?드라이브 정보 및 정렬 얻기

List<DriveInfo> list = new List<DriveInfo>(); 

foreach (DriveInfo item in DriveInfo.GetDrives()) 
{ 
    list.Add(item); 
} 

답변

1

당신은 이전에 예외를 던질 수 밖에 그것을 사용에 IsReady 속성을 확인했습니다. OrderBy을 사용하여 순서를 정렬 할 수 있습니다.

var sortedDrives = DriveInfo.GetDrives() 
          .Where(x=> x.IsReady) 
          .OrderBy(x=> x.AvailableFreeSpace) 
          .ToList(); 
+0

어떻게 확인해야합니까? 정렬 된 드라이브에서 할당하기 전에 또는 인쇄 할 때? 나는 준비가 끝났다 예외는 –

+0

나는 이미 너를 위해 그것을했다. '.Where (x => x.IsReady)'가 수행합니다. –

+0

드라이브가 준비되지 않았을 때 준비되지 않은 드라이브를 무시하고 있습니다. –

2

LinQ를 사용하면 다음과 같이 정렬 할 수 있습니다. IsReady을 확인하면 예외가 발생하지 않습니다.

var drives = DriveInfo.GetDrives() 
         .Where(x => x.IsReady) 
         .OrderBy(x => x.AvailableFreeSpace) 
         .ToList();