有人能告诉我如何从以下代码中删除所有 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();
}
}
警告7CA2202: Microsoft。用法: 对象“ crypStream”可以在方法“ CryptoServices”中释放多次。加密(string,byte [] ,byte [])’。避免生成系统。不应该对一个对象多次调用 Dispose。 : 第34行
警告8 CA2202: Microsoft。用法: 对象“ memyStream”可以在方法“ CryptoServices”中释放多次。加密(string,byte [] ,byte [])’。避免生成系统。不应该对一个对象多次调用 Dispose。 : 第34,37行
您需要 VisualStudio 代码分析来查看这些警告(这些不是 c # 编译器警告)。