代码分析 - 不要多次丢弃对象

Was*_*say 3 c# asp.net code-analysis c#-4.0 visual-studio-2013

当我从Visual Studio 2013分析我的代码时,出现了一些警告"不要多次丢弃对象",它还声明对象conn在对象中多次放置,但据我所知,如果我没有多次在对象中使用此对象而不是我不能实现我的目标.亲切地告诉我如何删除此警告?

这是我的代码:

private void GetData()
        {
            DataTable dt = new DataTable();
            _connString = ConfigurationManager.AppSettings["connString"];
            using (SqlConnection conn = new SqlConnection(_connString))
            {
                conn.Open();
                SqlCommand cmd = new SqlCommand("select * from ref_CourseRegistration_Users", conn);
                cmd.CommandType = CommandType.Text;
                SqlDataAdapter da = new SqlDataAdapter(cmd);
                DataSet ds = new DataSet();
                da.Fill(ds);
                conn.Close();
                if (ds.Tables[0].Rows.Count > 0)
                {
                    grdUsers.DataSource = ds;
                    grdUsers.DataBind();
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

这是我的分析截图: 在此输入图像描述

tar*_*ppa 6

如果您使用using语句,请在此处

using (SqlConnection conn = new SqlConnection(_connString))
Run Code Online (Sandbox Code Playgroud)

无需再次关闭连接,因此conn.Close();不需要.

它会自动处理对象.