Может ли кто-нибудь сказать мне, как удалить все предупреждения CA2202 из следующего кода?
public static byte[] Encrypt(string data, byte[] key, byte[] iv)
{
using(MemoryStream memoryStream = new MemoryStream())
{
using (DESCryptoServiceProvider cryptograph = new DESCryptoServiceProvider())
{
using (CryptoStream cryptoStream = new CryptoStream(memoryStream, cryptograph.CreateEncryptor(key, iv), CryptoStreamMode.Write))
{
using(StreamWriter streamWriter = new StreamWriter(cryptoStream))
{
streamWriter.Write(data);
}
}
}
return memoryStream.ToArray();
}
}
Предупреждение 7 CA2202: Microsoft.Usage: Object 'cryptoStream' может быть удален более чем один раз в методе 'CryptoServices.Encrypt(string, byte [], byte [])'. Чтобы избежать генерации исключения System.ObjectDisposedException, вы не должны вызывать Dispose более одного раза на объект.: Lines: 34
Предупреждение 8 CA2202: Microsoft.Usage: Object 'memoryStream' может быть удален более чем один раз в методе 'CryptoServices.Encrypt(string, byte [], byte [])'. Чтобы избежать генерации исключения System.ObjectDisposedException, вы не должны вызывать Dispose более одного раза на объект.: Lines: 34, 37
Вам нужен Visual Studio Code Analysis, чтобы увидеть эти предупреждения (это не предупреждения С# компилятора).