【问题标题】:c# - SQL command taking precendence, need to run command prior to executing sql commandc# - SQL命令优先,需要在执行sql命令之前运行命令
【发布时间】:2023-03-23 06:24:02
【问题描述】:

有没有办法做到这一点?我似乎在网上找不到任何关于此的内容。

如果我运行下面的代码,SQL 命令将在隐藏 div 标记之前执行,理想情况下我希望隐藏 div 标记,然后执行 SqlCommand

protected void RunStoredProcedure_click(object sender, EventArgs e)
{
        div.Visible = false;

        Connection.Open();

        SqlCommand StoredProcedure = new SqlCommand("StoredProcedure", Connection);
        StoredProcedure.CommandTimeout = 0;
        StoredProcedure.CommandType = CommandType.StoredProcedure;

        StoredProcedure.Parameters.Add(new SqlParameter("@Date", DateForStoredProcedure.Text));    // DateForStoredProcedure.Text));

        StoredProcedure.ExecuteNonQuery();

        Connection.Close();

        string queryAdditionalFilters = "where user = '" + user.Value + "'";
        generateTagsForLiteral(queryAdditionalFilters);
}

编辑:不知道为什么这被否决了,因为它被标记为下面的答案,答案如下所示。无论谁对我投了反对票,知道为什么会很有帮助,因为我觉得这是一个非常明确的问题,这样将来我可以正确或以首选方式发布问题。

【问题讨论】:

  • 这个方法叫什么?
  • 在编写 SqlCommand 代码之前,检查 div.Visible 是否为 false:if(!div.Visible)
  • 我认为您缺少服务器/客户端行为的基础知识。将服务器 div 可见性设置为 false 将不会影响客户端浏览器中的实际 div,直到服务器完成执行并将结果返回给客户端。如果要在客户端隐藏 div,请在启动导致上述代码调用的服务器调用之前使用 javascript。
  • @Theo 如果我在它之前放置一个 javascript 调用,SQL 命令仍然首先执行。因此,如果我添加: [code] "Page.ClientScript.RegisterStartupScript(this.GetType(), "CallMyFunction", "dialogPopUpVerify()", true);"[/code] 它仍然会在 java 之前运行 SQL 命令代码。
  • @ElenaDBA 我在发帖前试过了,可惜没用。

标签: c# asp.net sql-server c#-4.0


【解决方案1】:

感谢@Theo 的协助。

答案是先用javascript隐藏标签,然后调用c#按钮点击事件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多