.Net Core 2.1 System.IO.FileSystem.DriveInfo
Posted
技术标签:
【中文标题】.Net Core 2.1 System.IO.FileSystem.DriveInfo【英文标题】: 【发布时间】:2018-12-25 22:23:33 【问题描述】:我有一个使用 Visual Studio 2017 Preview 4 的 .NET Core 2.1 控制台应用程序
我似乎无法将 System.IO.FileSystem 加入我的项目。我需要访问 TotalFreeSpace
我愿意:
dotnet add package System.IO.FileSystem.DriveInfo
没有错误就成功了
在我的 .csproj 文件中:
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.1.2" />
<PackageReference Include="System.Diagnostics.PerformanceCounter" Version="4.5.0" />
<PackageReference Include="Microsoft.AspNetCore.SignalR.Client" Version="1.0.0" />
<PackageReference Include="System.IO.FileSystem.DriveInfo" Version="4.3.1" />
然后我清理并重建良好。
但是在我的源代码中,如果我再尝试:
using System.IO.FileSystem.DriveInfo;
我明白了:
错误 CS0234 命名空间“System.IO”中不存在类型或命名空间名称“FileSystem”(您是否缺少程序集引用?)
我该如何解决这个问题?我还能尝试什么?
【问题讨论】:
包名称不一定映射到命名空间,因此您会感到困惑和错误。你到底想做什么? 访问 GetDrives 试试System.IO.Directory.GetLogicalDrives();
我需要访问 DriveInfo 的 TotalFreeSpace 所以目录没有帮助:(
【参考方案1】:
我只是需要:
using System.IO;
然后
var drives=DriveInfo.GetDrives();
【讨论】:
【参考方案2】:完整的完整样本。
using System.IO;
namespace Sample
class Program
static void Main(string[] args)
DriveInfo dr = new DriveInfo("C");
Console.WriteLine(dr.TotalFreeSpace);
Console.ReadKey();
【讨论】:
以上是关于.Net Core 2.1 System.IO.FileSystem.DriveInfo的主要内容,如果未能解决你的问题,请参考以下文章
当前的 .Net SDK 不支持针对 .Net Core 2.2 目标 .Net Core 2.1 或更低版本 [重复]
Upload Image to .NET Core 2.1 API
ASP.NET Core 托管捆绑包 5 是不是也可以运行 .NET/ASP.NET Core 2.1 应用程序?
使用 TFS 代理将构建服务器配置为具有 .NET Core 2.1 和 .NET Core 3.1