Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# typeof(System.Net.WebUtility).GetMethod为.NetStandard2返回'null'(适用于.NetFramework4.6.1)_C#_.net_Asp.net Core_.net Core - Fatal编程技术网

C# typeof(System.Net.WebUtility).GetMethod为.NetStandard2返回'null'(适用于.NetFramework4.6.1)

C# typeof(System.Net.WebUtility).GetMethod为.NetStandard2返回'null'(适用于.NetFramework4.6.1),c#,.net,asp.net-core,.net-core,C#,.net,Asp.net Core,.net Core,如何在.NetStandard2中编写下面的代码,使其不会返回null 它可以与.NetFramework4.6.1配合使用 寻找准确的方法,但该方法适用于.NetFramework4.7,在这两个版本中都找不到System.Net.WebUtility源代码。该代码实际上是在要求一个名为System.Net.WebUtility的方法 static 可以是非公共的(如链接所示,实际上是私有的) 接受3个参数:byte[],int,int 。因此,符合.NET标准2.0(包括.NET核心2.0)

如何在.NetStandard2中编写下面的代码,使其不会返回
null

它可以与.NetFramework4.6.1配合使用


寻找准确的方法,但该方法适用于.NetFramework4.7,在这两个版本中都找不到
System.Net.WebUtility
源代码。

该代码实际上是在要求一个名为
System.Net.WebUtility
的方法

  • static
  • 可以是非公共的(如链接所示,实际上是私有的)
  • 接受3个参数:
    byte[]
    int
    int
  • 。因此,符合.NET标准2.0(包括.NET核心2.0)的实现可以自由地不实现它。这正是corefx所做的。System.Net.WebUtilities的corefx实现中没有此类方法:


    你有没有考虑改用它?它存在于.NET Standard 2.0中,应该在.NET Framework 4.6.1和.NET Core 2.0中得到支持。

    我的随机猜测是,.NET Standard和Framework之间的参数不同?请解释为什么投反对票@很遗憾,CShark无法在中找到
    System.Net.WebUtility
    ,但引用中有签名。谢谢!根据规定,它不应该在
    System.Runtime.Extensions
    下。我感谢你的帮助。
    MethodInfo method = typeof(System.Net.WebUtility).GetMethod(nameof(System.Net.WebUtility.UrlEncode),
            BindingFlags.Static | BindingFlags.NonPublic,
            null,
            new[]
            {
                typeof(byte[]),
                typeof(int),
                typeof(int)
            },
            null);