'HttpClientHandler' 不包含 'ServerCertificateValidationCallback' .Net Standard 2.0 的定义
'HttpClientHandler' does not contain a definition for 'ServerCertificateValidationCallback' .Net Standard 2.0
我目前正在将一个巨大的解决方案从 .Net Framework 4.7.2 迁移到 .Net Core 3.1。在当前项目(现在以 .Net Standard 2.0 为目标)中,我们有以下代码(已从 WebRequestHandler 更改):
var handler = new HttpClientHandler
{
Proxy = proxy,
UseDefaultCredentials = useDefaultCredentials,
};
if (Configuration.TrustCertificate)
{
handler.ServerCertificateValidationCallback = delegate
{
return true;
};
}
迁移到 .Net Standard 2.0 后,出现以下构建错误:
CS1061 'HttpClientHandler' does not contain a definition for 'ServerCertificateValidationCallback' and no accessible extension method 'ServerCertificateValidationCallback' accepting a first argument of type 'HttpClientHandler' could be found (are you missing a using directive or an assembly reference?)
我引用了 nuget 包 System.Net.Http (v4.3.4)。当我查看定义时,我看到 ServerCertificateValidationCallback 在那里但标记为 [EditorBrowsable(EditorBrowsableState.Never)]
文件头也可疑:
#region Assembly netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
// C:\Users\myuser\.nuget\packages\netstandard.library.0.3\build\netstandard2.0\ref\netstandard.dll
#endregion
我本以为 class 在 System.Net.Http 包中。
有什么想法吗?
属性 的名称是 ServerCertificateCustomValidationCallback
。如果您更改 属性 名称,构建错误应该得到修复。
我目前正在将一个巨大的解决方案从 .Net Framework 4.7.2 迁移到 .Net Core 3.1。在当前项目(现在以 .Net Standard 2.0 为目标)中,我们有以下代码(已从 WebRequestHandler 更改):
var handler = new HttpClientHandler
{
Proxy = proxy,
UseDefaultCredentials = useDefaultCredentials,
};
if (Configuration.TrustCertificate)
{
handler.ServerCertificateValidationCallback = delegate
{
return true;
};
}
迁移到 .Net Standard 2.0 后,出现以下构建错误:
CS1061 'HttpClientHandler' does not contain a definition for 'ServerCertificateValidationCallback' and no accessible extension method 'ServerCertificateValidationCallback' accepting a first argument of type 'HttpClientHandler' could be found (are you missing a using directive or an assembly reference?)
我引用了 nuget 包 System.Net.Http (v4.3.4)。当我查看定义时,我看到 ServerCertificateValidationCallback 在那里但标记为 [EditorBrowsable(EditorBrowsableState.Never)]
文件头也可疑:
#region Assembly netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
// C:\Users\myuser\.nuget\packages\netstandard.library.0.3\build\netstandard2.0\ref\netstandard.dll
#endregion
我本以为 class 在 System.Net.Http 包中。
有什么想法吗?
属性 的名称是 ServerCertificateCustomValidationCallback
。如果您更改 属性 名称,构建错误应该得到修复。