0

这可能是格式问题。如何将动态数据插入 SQL 服务器?

插入物:

 //Orders
int howMan = DropDownList1.SelectedIndex;
int i = 0;
while (i < howMan)
{
    string insertNewOrder = "InSERT INTO tblOrders(orderName, orderQuabt, orderPricePer, orderTotal, orderInput, orderCustName)";
    insertNewOrder += "VALUES(@ordernumber, @orderQuant, @orderPrice,@orderTotal, @orderCust, )";

    SqlCommand sql0rder = new SqlCommand(insertNewOrder, hookup);
    sql0rder.Parameters.Add("@ordernumber", Item.Text); 
    sql0rder.Parameters.Add("@orderQuant", Item.Text);
    sql0rder.Parameters.Add("@orderPrice", Item.Text);
    sql0rder.Parameters.Add("@orderTotal", Item.Text);
    sql0rder.Parameters.Add("@orderInput", Item.Text);
    sql0rder.Parameters.Add("@orderCust", Item.Text);
    hookup.Open();
    sql0rder.ExecuteNonQuery();
    hookup.Close();
    i++;
}

以下是动态文本框:

    int howMan = DropDownList1.SelectedIndex;
    int i;
    Control c;

    for (i = 0; i < howMan; i++ )
    {
        c = this.ParseControl("<table><tr><th>OrderNumber</th><td><asp:TextBox id='orderNumber" + i + "' runat='server' CssClass='input'/></td></tr><tr><th>What did they order?</th><td><asp:TextBox id='product" + i + "' runat='server' CssClass='input'/> </td> </tr>   <tr><th>Quantity</th><td><asp:TextBox id='Quant" + i + "' runat='server' CssClass='input'/> </td></tr> <tr><th>Price</th><td><asp:TextBox id='price" + i + "' runat='server' CssClass='input'/></td>  </tr><tr><th>Total Cost Javascript</th><td><asp:Label ID='cost"+i+"' runat='server' Text=''></asp:Label></td> </tr> </table><br><br>");
        TextBoxesHere.Controls.Add(c);  
    }

在插入中,我尝试了类似 Item+i.Text 或 Item[i].Text 的东西。我的心态是你在 PHP 或 Javascript 中看到的。那么我该怎么做呢?

编辑: 我不得不从这个问题上继续前进,并使用一种不涉及循环的方式。然而,我改变的主要内容是动态文本框。我决定只使用可见性,而不是被创建。

4

1 回答 1

0

您确定不想使用实体框架吗?

添加 -> 新元素 -> 数据 -> ADO.NET 实体数据模型

打开edmx,右键,从数据库刷新

我不是数据库专家,但 EntityFramework 对我来说似乎比传统的 SqlCommand/SqlAdaptor 方式更好(如果我错了,请随时纠正我/告诉我最好的方式)

于 2013-04-17T16:11:45.847 回答