【问题标题】:add list of sqlparameters to sqldatasource update将 sql 参数列表添加到 sqldatasource 更新
【发布时间】:2013-04-12 14:48:40
【问题描述】:

我在尝试创建和设置一些 sqlupdate 参数时遇到了麻烦,我希望下面的代码能够自我解释。

vis studio 不满意我的 PArams 在 mo 的数据源中

感谢小伙伴们的建议

protected void btnSave_Click(object sender, EventArgs e)
{
    List<SqlParameter> Params = new List<SqlParameter>();
    Params.Add(new SqlParameter("@ID", hidID.Value));
    Params.Add(new SqlParameter("@MachineName", txtMachine.Text));
    Params.Add(new SqlParameter("@AssetNo", txtAssetNo.Text));
    Params.Add(new SqlParameter("@ID", hidID.Value));

    dsEquipment.UpdateParameters.Add(Params);

    if (strMode == "edit")
    {
        dsEquipment.Update();
    }
    else if (strMode == "insert")
    {
        dsEquipment.Insert();
    }
    else
    {
        return;
    }


}

【问题讨论】:

  • 您是否有一个令人信服的理由不只是在标记中配置这些?
  • 因为 txtName.Text 的值都是以编程方式设置的,所以我通常会在哪里使用 Value='' 我不能吗?基本上我有一个列表视图,我在该列表视图中使用一个控件作为表单,所以首先我的列表视图填充用户控件,然后我需要更新数据,所以这是我认为正确的方式?
  • 基本上我有一个用于编辑/插入项目模板的大表单,它们几乎相同,所以我使用两个控件

标签: .net sqldatasource sqlparameter


【解决方案1】:

在我删除之前尝试

dsEquipment.UpdateParameters = Params;

dsEquipment.UpdateParameters.Add(new SqlParameter("@ID", hidID.Value));
dsEquipment.UpdateParameters.Add(new SqlParameter("@MachineName", txtMachine.Text));

UpdateParameters 来自 System.Web.UI.WebControls
而且这看起来不像是一个网络应用
SqlDataSource.UpdateParameters

尝试使用 SQLcommand 或 System.Data.SqlClient 中的东西

SqlCommand.Parameters Property

SqlCommand command = new SqlCommand(commandText, connection);
command.Parameters.Add("@ID", SqlDbType.Int);
command.Parameters["@ID"].Value = customerID;

【讨论】:

  • 这是一个 Web 应用程序,是的...我需要运行一个存储过程来更新记录,我的 aspx 页面中有一个 sqldatasource,我的 webconfig 中有一个连接字符串,我该怎么做让它工作?谢谢
  • 那没关系。我会删除。您应该标记 ASP.NET
  • 我不知道该为命令文本和连接添加什么? :S 对不起
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-22
  • 2010-10-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多