简体   繁体   English

SQL数据读取器不会将我的值返回给对象

[英]Sql data reader wont return my values to objects

I have this code that gets the return query from SQL and place it in Labels. 我有这段代码可从SQL获取返回查询并将其放置在Labels中。 The problem is, when I click the Search Button, The Labels wont populate. 问题是,当我单击“搜索”按钮时,不会填充标签。 but when I enter debug mode, It has values. 但是当我进入调试模式时,它具有值。 Why is that?! 这是为什么?! help! 救命!

//I've cut down the code here to make the question clearer
//But these 4 fields were all valid properties - Sayse
public string FirstName
public string MiddleName
public string LastName
public string Email

  public void SearchAffectedUser()
    {
        using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
        {

            using (SqlCommand com_retrieve = new SqlCommand("Reader.usp_SearchAffectedUser", con))
            {
                com_retrieve.CommandType = CommandType.StoredProcedure;
                com_retrieve.Parameters.Add("@fld_EmployeeId", SqlDbType.Int).Value = AffectedUser;
                con.Open();

                com_retrieve.ExecuteNonQuery();
                SqlDataReader dr = com_retrieve.ExecuteReader();
                if (dr.Read())
                {

                    FirstName = dr.GetValue(0).ToString();
                    MiddleName = dr.GetValue(1).ToString();
                    LastName = dr.GetValue(2).ToString();
                    Email = dr.GetValue(3).ToString();
                }

            }
        }
    }

  protected void findAffectedUserButton_Click(object sender, EventArgs e)
    {
        ticket.AffectedUser = affectedUserTextBox.Text;
        ticket.FirstName = firstNameValueLabel.Text;
        ticket.MiddleName = middleNameValueLabel.Text;
        ticket.LastName = lastNameValueLabel.Text;
        ticket.Email = emailValueLabel.Text;
        ticket.SearchAffectedUser();

    }

First set the AffectedUser property used for the search then call the search command and finally set the labels. 首先设置用于搜索的AffectedUser属性,然后调用搜索命令,最后设置标签。

protected void findAffectedUserButton_Click(object sender, EventArgs e)
{
    ticket.AffectedUser = affectedUserTextBox.Text;
    ticket.SearchAffectedUser();
    firstNameValueLabel.Text = ticket.FirstName;
    middleNameValueLabel.Text = ticket.MiddleName;
    lastNameValueLabel.Text = ticket.LastName;
    emailValueLabel.Text = ticket.Email;

}

将标签的TEXT属性设置为“”。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM