string startFolder = @"c:\program files\Microsoft Visual Studio 9.0\Common7";
// Used in WriteLine to trim output lines.
int trimLength = startFolder.Length;
// 파일시스템의 dir 정보를 가져옵니다.
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(startFolder);
// 특정위치 아래의 파일리스트를 가져옵니다.
IEnumerable<System.IO.FileInfo> fileList = dir.GetFiles("*.*", System.IO.SearchOption.AllDirectories);
// 파일 확장명에 따라서 그룹화합니다.
var queryGroupByExt =
from file in fileList
group file by file.Extension.ToLower() into fileGroup
orderby fileGroup.Key
select fileGroup;
Linq group by 절을 이용하여 파일의 확장명에 따라서 그룹화하는 예제입니다.