Привет, у меня есть метод расширения в f #, который проверяет, подключен ли TcpClinet, и это довольно простой код:
[<Extension>]
type TcpExtension() =
[<Extension>]
static member inline IsConnectionEstablished(client: TcpClient) : bool =
let ipProperties : IPGlobalProperties = IPGlobalProperties.GetIPGlobalProperties()
let tcpConnection : Option<TcpConnectionInformation> = ipProperties.GetActiveTcpConnections() |> Seq.tryFind(fun connection -> connection.LocalEndPoint.Equals(client.Client.LocalEndPoint) && connection.RemoteEndPoint.Equals(client.Client.RemoteEndPoint))
match tcpConnection with
| Some connection -> true
| None -> false
Теперь я пытаюсь использовать это просто:
let private WaitForData (client : TcpClient) =
let isConnectionAlive : bool = client.IsConnectionEstablished
isConnectionAlive
Но я получаю сообщение, которое выглядит так:
Эта функция принимает слишком много аргументов или используется в контексте, где функция не ожидается
Когда я проверял документацию Microsoft, вот как они показывают, что она должна обрабатываться, что мне здесь не хватает?