.net core .net core 3.1无法分配请求的地址
我在使用.net core 3.1进行tcp连接时遇到一些问题。 它与.NETCore2.2配合得很好,但我不明白为什么它与最新的框架配合得不好。 我得到一个错误: System.Net.Sockets.SocketException(99):无法分配请求的地址 这是我的代码(与.net core 2.2和.net core 3.1的代码相同)和相同的参数(ip和端口).net core .net core 3.1无法分配请求的地址,.net-core,.net-core-2.2,.net-core-3.1,.net Core,.net Core 2.2,.net Core 3.1,我在使用.net core 3.1进行tcp连接时遇到一些问题。 它与.NETCore2.2配合得很好,但我不明白为什么它与最新的框架配合得不好。 我得到一个错误: System.Net.Sockets.SocketException(99):无法分配请求的地址 这是我的代码(与.net core 2.2和.net core 3.1的代码相同)和相同的参数(ip和端口) dotnet core 2.1之后,它的行为应该与dotnet core 2.1相同,但您可能仍希望检查。另外值得检查的是So
dotnet core 2.1之后,它的行为应该与dotnet core 2.1相同,但您可能仍希望检查。另外值得检查的是
SocketException
的ErrorCode
,这可能会告诉我们更多需要调查的信息,如果你能分享问题所在,将来可能会对其他人有所帮助。只是说.当然..从VS2019开始,我使用“docker”模式(不知道正确的术语)执行应用程序,而不是App.using-AppContext.SetSwitch(“System.Net.Http.UseSocketsHttpHandler”,false);从已解决的问题来看,在dotnet core 2.1之后,meIt的行为应该与dotnet core 2.1相同,但您可能仍希望检查。另外值得检查的是SocketException的ErrorCode
,这可能会告诉我们更多需要调查的信息,如果你能分享问题所在,将来可能会对其他人有所帮助。只是说.当然..从VS2019开始,我使用“docker”模式(不知道正确的术语)执行应用程序,而不是App.using-AppContext.SetSwitch(“System.Net.Http.UseSocketsHttpHandler”,false);他帮我解决了这个问题
private bool SetupServerSocket(){
bool isOk = true;
try {
IPEndPoint myEndpoint = new IPEndPoint(IPAddress.Parse(_parametres.HostIp), _port);
_serverSocket = new Socket(myEndpoint.Address.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
_serverSocket.Bind(myEndpoint);
_serverSocket.Listen((int)SocketOptionName.MaxConnections);
}
catch (Exception ex){
_logger.LogCritical("SetupServerSocket exception: " + ex);
isOk = false;
}
return isOk;
}