正在检查c#中路径列表的权限

本文关键字:列表 权限 路径 检查 | 更新日期: 2023-09-27 17:57:27

我有一个方法,它检查给定路径的权限及其工作情况,如下所示。。

public bool IsAvailable(string path)
        {
            bool hasPermissions = false;
            if (Directory.Exists(path))
            {
                var permission = new FileIOPermission(FileIOPermissionAccess.Write, path);
                try
                {
                    permission.Demand();
                    hasPermissions = true;
                }
                catch(SecurityException e)
                {
                    hasPermissions = false;
                }
            }
            return hasPermissions;
        }

现在我的问题是,我想检查路径列表的权限。我的意思是,我会在方法的参数中传递路径列表,如果它对参数中给定的所有路径都有权限,它应该返回true或false,如下所示

public bool IsAvailable(List<string> pathList)
{
}

有人能帮忙吗?

正在检查c#中路径列表的权限

过载的魔力:

public bool IsAvailable(List<string> pathList)
{
    return pathList.All(path => IsAvailable(path));
}

由于这两种方法具有不同的签名(不同的参数意味着不同的定义),因此它们可以共存。这只是为列表pathList中的每个path从新方法调用现有方法,检查它们是否都有有效路径。