Silverlight 4 - WebClient в выражении использования - PullRequest
2 голосов
/ 08 мая 2011

При использовании класса WebClient из обычного настольного приложения я могу использовать оператор using для обеспечения очистки сетевых ресурсов:

using(Webclient wb = new WebClient())
{
}

Однако в Silverlight я не могу этого сделать, потому что WebClient не IDisposable.

1) Почему WebClient не идентифицируется в silverlight?
2) Есть ли другой способ обеспечить очистку сетевых ресурсов?

1 Ответ

1 голос
/ 09 мая 2011

Причина, по которой Silverlight WebClient не реализует IDisposable, заключается в том, что он поддерживает только асинхронные операции. Поскольку вы не можете должным образом заключить асинхронные операции в оператор использования, поддержка использования была бы бессмысленной.

Вы можете использовать метод CancelAsync, чтобы убить любую невыполненную операцию, которая вам больше не нужна.

...