Fedora 25中的dotnet:system.net中不存在WebClient



我在fedora 25上使用dotnet。我使用这些说明将dotnet与rpms安装以进行分发,因为Fedora 25没有官方包裹:

事情看起来不错:

$ dotnet --version
1.0.0-preview2-1-003175

我正在尝试运行一个使用Visual Code创建的简单WebClient示例:

using System;
using System.Net;
using System.Net.Http;
using System.Net.WebClient;
namespace ConsoleApplication
{
    public class Program
    {
        public static void Main(string[] args)
        {
            using (var webClient = new WebClient()) 
            {
                var url = [someurl];
                var htmlCode = webClient.DownloadData(url);
                var base64 = Convert.ToBase64String(htmlCode);
            }
        }
    }
}

请注意,我逐一添加了using语句,遇到了此问题:

$ dotnet build
Project cbsearchui_test (.NETCoreApp,Version=v1.1) will be compiled because expected outputs are missing
Compiling test_project for .NETCoreApp,Version=v1.1
/usr/lib64/dotnetcore/dotnet compile-csc 
@test_project/obj/Debug/netcoreapp1.1/dotnet-
compile.rsp returned Exit Code 1
test_project/Program.cs(4,18): error CS0234: 
The type or namespace name 'WebClient' does not exist in the namespace 
'System.Net' (are you missing an assembly reference?)
Compilation failed.
    0 Warning(s)
    1 Error(s)
Time elapsed 00:00:00.6661503

这是我的project.json,由VS代码自动生成:

{
  "version": "1.0.0-*",
  "buildOptions": {
    "debugType": "portable",
    "emitEntryPoint": true
  },
  "dependencies": {},
  "frameworks": {
    "netcoreapp1.1": {
      "dependencies": {
        "Microsoft.NETCore.App": {
          "type": "platform",
          "version": "1.1.0"
        }
      },
      "imports": "dnxcore50"
    }
  }
}

我正在努力理解这是否与我的特定dotnet安装和/或Fedora 25有关。类似的问题似乎是指兼容性问题,分析,不良用法声明等。但是它们似乎都不适用于这个问题。

我还尝试将依赖关系更改为netcoreapp更改为1.0.0而不是1.1.0,但是相同的错误仍然存在。

作为评论的结论,答案是:WebClient不能在(Fedora(Linux中使用,因为.NET 2.0不可用。解决方案是使用HttpClient

相关内容

  • 没有找到相关文章

最新更新