asp.net 核心 1.1 WCF 客户端导致整个应用程序崩溃
asp.net core 1.1 WCF client causes whole app to crash
我有一个 PCL,其中包含一些 WCF 客户端。下面是 project.json:
"dependencies": {
"NETStandard.Library": "1.6.1",
"Newtonsoft.Json": "9.0.1",
"System.ComponentModel.Annotations": "4.3.0",
"System.Net.Http": "4.3.0",
"System.Reflection": "4.3.0",
"System.ServiceModel.NetTcp": "4.3.0",
"System.ServiceModel.Primitives": "4.3.0"
},
"frameworks": {
"netstandard1.4": {}
}
asp.net 核心 1.0.1 一切正常,但是在升级我的 asp.net 核心项目中的所有内容后,我的 wcf 客户端发出的所有调用都失败并出现一个可怕的错误:
An unhandled exception of type 'System.ExecutionEngineException' occurred in System.Private.CoreLib.ni.dll
我的 asp.net 核心应用程序的 project.json 是这样的:
{
"dependencies": {
"Microsoft.AspNetCore.Diagnostics": "1.1.0",
"Microsoft.AspNetCore.Mvc": "1.1.0",
"Microsoft.AspNetCore.Razor.Tools": {
"version": "1.1.0-preview4-final",
"type": "build"
},
"Microsoft.AspNetCore.Routing": "1.1.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
"Microsoft.AspNetCore.StaticFiles": "1.1.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",
"Microsoft.Extensions.Configuration.Json": "1.1.0",
"Microsoft.Extensions.Logging": "1.1.0",
"Microsoft.Extensions.Logging.Console": "1.1.0",
"Microsoft.Extensions.Logging.Debug": "1.1.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.1.0"
},
"tools": {
"BundlerMinifier.Core": "2.2.306",
"Microsoft.AspNetCore.Razor.Tools": "1.1.0-preview4-final",
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.1.0-preview4-final"
},
"frameworks": {
"netcoreapp1.1": {
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.1.0"
},
"MySharedProject": {
"target": "project"
}
},
"imports": [
"netstandard"
]
}
},
}
如果我保持一切不变,只需将 Microsoft.NETCore.App
上的版本更改为 1.0.1,一切正常。我在 VS 输出 window 中看到的最后一件事是调用加载 System.Xml.XmlDocument
包。然后它就崩溃了。
这是 .NET Core 1.1 的已知问题:https://github.com/dotnet/core/blob/master/release-notes/1.1/1.1-known-issues.md#systemexecutionengineexception-in-systemsecuritycryptographyx509cerificatesdll-on-windows
Workaround: Set environment variable COMPlus_ReadyToRunExcludeList=System.Security.Cryptography.X509Certificates
我有一个 PCL,其中包含一些 WCF 客户端。下面是 project.json:
"dependencies": {
"NETStandard.Library": "1.6.1",
"Newtonsoft.Json": "9.0.1",
"System.ComponentModel.Annotations": "4.3.0",
"System.Net.Http": "4.3.0",
"System.Reflection": "4.3.0",
"System.ServiceModel.NetTcp": "4.3.0",
"System.ServiceModel.Primitives": "4.3.0"
},
"frameworks": {
"netstandard1.4": {}
}
asp.net 核心 1.0.1 一切正常,但是在升级我的 asp.net 核心项目中的所有内容后,我的 wcf 客户端发出的所有调用都失败并出现一个可怕的错误:
An unhandled exception of type 'System.ExecutionEngineException' occurred in System.Private.CoreLib.ni.dll
我的 asp.net 核心应用程序的 project.json 是这样的:
{
"dependencies": {
"Microsoft.AspNetCore.Diagnostics": "1.1.0",
"Microsoft.AspNetCore.Mvc": "1.1.0",
"Microsoft.AspNetCore.Razor.Tools": {
"version": "1.1.0-preview4-final",
"type": "build"
},
"Microsoft.AspNetCore.Routing": "1.1.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
"Microsoft.AspNetCore.StaticFiles": "1.1.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",
"Microsoft.Extensions.Configuration.Json": "1.1.0",
"Microsoft.Extensions.Logging": "1.1.0",
"Microsoft.Extensions.Logging.Console": "1.1.0",
"Microsoft.Extensions.Logging.Debug": "1.1.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.1.0"
},
"tools": {
"BundlerMinifier.Core": "2.2.306",
"Microsoft.AspNetCore.Razor.Tools": "1.1.0-preview4-final",
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.1.0-preview4-final"
},
"frameworks": {
"netcoreapp1.1": {
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.1.0"
},
"MySharedProject": {
"target": "project"
}
},
"imports": [
"netstandard"
]
}
},
}
如果我保持一切不变,只需将 Microsoft.NETCore.App
上的版本更改为 1.0.1,一切正常。我在 VS 输出 window 中看到的最后一件事是调用加载 System.Xml.XmlDocument
包。然后它就崩溃了。
这是 .NET Core 1.1 的已知问题:https://github.com/dotnet/core/blob/master/release-notes/1.1/1.1-known-issues.md#systemexecutionengineexception-in-systemsecuritycryptographyx509cerificatesdll-on-windows
Workaround: Set environment variable COMPlus_ReadyToRunExcludeList=System.Security.Cryptography.X509Certificates