public virtual IEnumerable<string> GetDirectories(string path)
{
try
{
path = EnsureTrailingSlash(GetFullPath(path));
if (!Directory.Exists(path))
{
return Enumerable.Empty<string>();
}
return Directory.EnumerateDirectories(path)
.Select(MakeRelativePath);
}
catch (UnauthorizedAccessException)
{
}
catch (DirectoryNotFoundException)
{
}
return Enumerable.Empty<string>();
}