Скажите, у меня есть следующий код:
public static Client Connect(string hostname, int port, bool useSsl)
{
TcpClient tcpClient = new TcpClient(hostname, port);
if (!useSsl)
{
return new Client(tcpClient.GetStream());
}
SslStream sslStream = new SslStream(tcpClient.GetStream());
sslStream.AuthenticateAsClient(hostname);
return new Client(sslStream);
}
Когда я компилирую это, Code Analysis говорит мне, что я должен удалить tcpClient
до того, как ссылка выйдет из области видимости. Проблема в том, что мне нужно использовать экземпляр базового потока дальше, и я не могу разместить здесь tcpClient
. В то же время я не хочу хранить ссылку на tcpClient
где-то для последующей утилизации, так как мне нужен только поток. Какое здесь правильное решение? Спасибо.