簡體   English   中英

查詢在ASP.net中不起作用

[英]Query Won't Work in ASP.net

如果查詢結果為btn1.CommandArgument =,我試圖隱藏此按鈕。

該查詢有效,因為我已經對其進行了測試,但是整個解決方案均無效。

如果我更換

myCommand.ExecuteScalar().ToString() 

在查詢結果的if語句中,按鈕是隱藏的。

我看了好幾次,但是找不到任何問題。 謝謝。

protected void ListView1_ItemDataBound(object sender, ListViewItemEventArgs e)
{
    Button btn1 = (Button)e.Item.FindControl("addFollowerButton");

    // request Query string
    var querystring = Request.QueryString["ProjectId"];

    string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;

    string select = "Select ProfileId from Project_Follower Where ProjectId = @ProjectId";

    using (SqlConnection myConnection = new SqlConnection(connectionString))
    {
        myConnection.Open();

        SqlCommand myCommand = new SqlCommand(select, myConnection);
        myCommand.Parameters.AddWithValue("@ProjectId", querystring);

        myCommand.ExecuteScalar();

        if (myCommand.ExecuteScalar().ToString() == btn1.CommandArgument.ToString())
        {
            Button hdn = (Button)e.Item.FindControl("addFollowerButton");
            btn1.Visible = false;
        }
    }
}

您只需執行一次 .ExecuteScalar()調用! 抓取結果(類型為object ),然后檢查以確保其不為null ,如果是,則對它調用.ToString()並與要檢查的另一個字符串進行比較:

using (SqlConnection myConnection = new SqlConnection(connectionString))
{
    myConnection.Open();

    SqlCommand myCommand = new SqlCommand(select, myConnection);
    myCommand.Parameters.AddWithValue("@ProjectId", querystring);

    object result = myCommand.ExecuteScalar();

    if (result != null && result.ToString().Equals(btn1.CommandArgument.ToString()))
    {
        Button hdn = (Button)e.Item.FindControl("addFollowerButton");
        btn1.Visible = false;
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM