【问题标题】:Update SQL database with session parameter in C#在 C# 中使用会话参数更新 SQL 数据库
【发布时间】:2013-08-08 20:12:38
【问题描述】:

我正在寻找一种从 C# 中的 code-behindUPDATE SQL 服务器数据库的方法,使用 session parameter,这就是我的 SqlCommandasp 中的样子:

重要提示: C# 中的 SqlCommand 将在 static function 中,这会是一个问题吗?

提前致谢!

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:SPMS_DBConnectionString1 %>" 
        UpdateCommand="UPDATE Project SET startDate = @startDate, dueDate = @dueDate, progress = @progress, status = @status WHERE (prID = @prID)">
        <UpdateParameters>
            <asp:SessionParameter Name="prID" SessionField="project" Type="String" />
            <asp:Parameter Name="startDate" Type="DateTime"/>
            <asp:Parameter Name="dueDate" Type="DateTime" />
            <asp:Parameter Name="progress" Type="Int32" />
            <asp:Parameter Name="status" Type="Boolean" />
            <asp:Parameter Name="projectID" Type="Int32" />
        </UpdateParameters>
    </asp:SqlDataSource>

【问题讨论】:

  • 静态函数不会有任何问题。它会很好用。
  • UpdateCommand="UPDATE Project SET startDate=,- 这可能会造成问题

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


【解决方案1】:

我就是这样解决的:

    string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["SPMS_DBConnectionString1"].ConnectionString;
    using (SqlConnection connection = new SqlConnection(connectionString))
    using (SqlCommand command = connection.CreateCommand())
    { 

        DateTime startDate = DateFromMiliSec(start);
        DateTime dueDate = DateFromMiliSec(end);
        int progress = Convert.ToInt32(prog);
        string prID = HttpContext.Current.Session["project"].ToString();         

        command.CommandText ="UPDATE Project SET startDate = @startDate, dueDate = @dueDate, progress = @progress, status = @status WHERE (prID = @prID)";

        command.Parameters.AddWithValue("@startDate", startDate );
        command.Parameters.AddWithValue("@dueDate", dueDate );
        command.Parameters.AddWithValue("@progress", progress );
        command.Parameters.AddWithValue("@status", status );
        command.Parameters.AddWithValue("@prID", prID );

        connection.Open();
        command.ExecuteNonQuery();
        connection.Close();
    } 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-31
    • 2013-06-08
    • 1970-01-01
    • 2014-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-27
    相关资源
    最近更新 更多