2010-09-05 106 views
1

将数据源绑定到类似gridview或repeater的东西很容易,但是如何使用标签来完成此操作?下面是我想修改的sql连接。顺便说一下,我不需要2路绑定。如何将数据源绑定到标签控件

public void Sql_Connection(string queryString) 
{ 
    SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["RBConnectionString"].ConnectionString); 
    SqlCommand cmd = new SqlCommand(queryString, conn); 
    conn.Open(); 
    cmd.ExecuteNonQuery(); 
    conn.Close(); 
} 

我使用的查询:

SELECT起价RbSpecials active = 1的

回答

3
public string SqlConnection(string queryString) 
{ 
    using (var conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["RBConnectionString"].ConnectionString)) 
    using (var cmd = conn.CreateCommand()) 
    { 
     conn.Open(); 
     cmd.CommandText = queryString; 
     using (var reader = cmd.ExecuteReader()) 
     { 
      while (reader.Read()) 
      { 
       // This will return the first result 
       // but there might be other 
       return reader.GetString(0); 
      } 
     } 
     return null; 
    } 
} 

这也将确保在异常的情况下,所有一次性的物品设置,并能正确将SQLConnection返回到连接池以便重新使用。

最后分配标签的Text属性:

lblTest.Text = SqlConnection("SELECT Description FROM RbSpecials WHERE Active=1"); 
+0

谢谢!它效果很好。 – 2010-09-05 08:25:07

1

使用ExecuteReader而非ExecuteNonQuery

public void Sql_Connection(string queryString) 
{ 
    using(SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings"RBConnectionString"].ConnectionString)) 
    { 
     using(SqlCommand cmd = new SqlCommand(queryString, conn)) 
     { 
      conn.Open(); 
      using(SqlDataReader rdr = cmd.ExecuteReader()) 
      { 
       while(rdr.Read()) 
       { 
        lblDescription.Text = rdr.GetString(0); 
       } 
      } 
     } 

    } 
} 
0
using (SqlConnection con = new SqlConnection(Connection_String)) 
{ 
    SqlCommand cmd = new SqlCommand("select * from Customers", con); 
    cmd.CommandType = CommandType.StoredProcedure; 
    SqlDataReader adpt = cmd.ExecureReader(); 
    if(rdr.Read()) 
    { 
     lblName.Text = rdr[0].ToString(); 
    } 
} 
相关问题