是否有可能获得目录列表并按所有者过滤?

时间:2014-09-18 02:47:19

标签: c# linq

我想获得具有特定所有者的目录列表。

要获取目录列表而不进行过滤,

foreach(var directory in directoryInfo.GetDirectories())
{
  ....
}

但是,是否可以按所有者进行过滤?我在LINQ中找不到所有者相关的功能

foreach(var directory in directoryInfo.GetDirectories().Where(....))
{
  ....
}

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

是的,你可以:

var list=directoryInfo.GetDirectories().Cast<DirectoryInfo>()
                      .Where(x=> System.IO.File.GetAccessControl( x.FullName)
                                       .GetOwner(typeof(System.Security.Principal.NTAccount)).ToString()
                                       .Contains("Administrators"));