每次在visual studio 2015,当我运行Code Analysis
时,有一些恼人的警告。所有这些都是在这样的方法:如何解决CA2202:为了避免生成一个System.ObjectDisposedException警告
这里是我的方法:
public static JObject ReadJson(string file_path)
{
try {
JObject o1 = JObject.Parse(File.ReadAllText(file_path));
using (StreamReader file = File.OpenText(file_path))
{
using (JsonTextReader reader = new JsonTextReader(file))
{
return (JObject)JToken.ReadFrom(reader);//the warning is here
}
}
}
catch
{
return default(JObject);
}
}
那么,为什么这个警告出现?如何解决它?而最重要的是什么 我在这个方法的错,在我看来很完美
警告说明
严重性代码说明项目文件行警告CA2202: Microsoft.Usage:对象“文件”可以在 方法'JsonHelper.ReadJson(string)'中多次处理。为避免生成一个 System.ObjectDisposedException,您不应该在对象上调用Dispose超过 一次。
我使用 '使用Newtonsoft.Json; 使用Newtonsoft.Json.Linq;' –