如何在不实际写入任何内容的情况下测试目录在跨平台.NET中是否可写?

如何在不实际写入任何内容的情况下测试目录在跨平台.NET中是否可写?,.net,.net,我知道,我可以试着写一个文件,然后失败,如果得到一种访问被拒绝的错误。但我想知道是否有另一种方法可以询问托管操作系统是否可以在指定的目录中写入。当然,我不希望直接询问任何操作系统,而是使用跨平台API。我怀疑答案是否定的,我也不认为提出这样的问题是一个好策略:在您有机会使用之前,您刚刚被告知您拥有的权利可能会被剥夺(比如,被管理员剥夺)。DirectorySecurity for 4.8,FileSystemAlextensions for net5返回有关ACL的信息,并且可能具有您正在查找的

我知道,我可以试着写一个文件,然后失败,如果得到一种访问被拒绝的错误。但我想知道是否有另一种方法可以询问托管操作系统是否可以在指定的目录中写入。当然,我不希望直接询问任何操作系统,而是使用跨平台API。

我怀疑答案是否定的,我也不认为提出这样的问题是一个好策略:在您有机会使用之前,您刚刚被告知您拥有的权利可能会被剥夺(比如,被管理员剥夺)。DirectorySecurity for 4.8,FileSystemAlextensions for net5返回有关ACL的信息,并且可能具有您正在查找的ACL特定于Windows的内容。我也需要学习Linux。所以我假设我们只需要尝试写任何要写的东西,如果失败,返回拒绝访问。我知道,
try/catch
无论如何都必须完成,我只是想早点检查一下,但话说回来,这并不重要。