0

我有一个视图,它由八个组成,Textboxes用于从用户输入问题的选项文本以在DataBase表中提交。这些值将进入名为 Question_Options 的表中,该表具有相同的 Question_Id(FK),我保存在隐藏字段中,现在我必须提交所有TextBoxesDataBase,我想通过循环来完成 ....请有任何想法 ....i我只是一个初学者。

我的 HTML 代码是

 <table>
        <tr>
            <td>Option 1
                <asp:HiddenField ID="HF_QidOpt" runat="server" />
            </td>
            <td>
                <asp:TextBox ID="txt_OptText" runat="server" Height="54px" TextMode="MultiLine" Width="310px"></asp:TextBox>
            </td>
            <td>Option 1 Description</td>
            <td>
                <asp:TextBox ID="txt_OptDesc" runat="server" TextMode="MultiLine" Height="54px" Width="310px"></asp:TextBox>
            </td>
        </tr>
        <tr>
            <td>Option 2</td>
            <td>
                <asp:TextBox ID="txt_OptText2" runat="server" Height="54px" TextMode="MultiLine" Width="310px"></asp:TextBox>
            </td>
            <td>Option 2 Description</td>
            <td>
                <asp:TextBox ID="txt_OptDesc2" runat="server" TextMode="MultiLine" Height="54px" Width="310px"></asp:TextBox></td>
        </tr>
        <tr>
            <td>Option 3</td>
            <td>
                <asp:TextBox ID="txt_OptText3" runat="server" Height="54px" TextMode="MultiLine" Width="310px"></asp:TextBox></td>
            <td>Option 3 Description</td>
            <td>
                <asp:TextBox ID="txt_OptDesc3" runat="server" TextMode="MultiLine" Height="54px" Width="310px"></asp:TextBox></td>
        </tr>
        <tr>
            <td>Option 4</td>
            <td>
                <asp:TextBox ID="txt_OptText4" runat="server" Height="54px" TextMode="MultiLine" Width="310px"></asp:TextBox></td>
            <td>Option 4 Description</td>
            <td>
                <asp:TextBox ID="txt_OptDesc4" runat="server" TextMode="MultiLine" Height="54px" Width="310px"></asp:TextBox></td>
        </tr>
        <tr>
            <td>
                <asp:Button ID="btn_Create_Option" runat="server" Text="Create Option" /></td>
        </tr>
        </table>

我已经尝试过这个但无法获得价值

Try
            Dim DB As New SQLDBDataContext
            Dim NGUID As New System.Guid(HF_QidOpt.Value.ToString)
            Dim boxes As TextBox() = New TextBox() {txt_OptText, txt_OptText2, txt_OptText3, txt_OptText4, txt_OptDesc, txt_OptDesc2, txt_OptDesc3, txt_OptDesc4}
            For Each t As TextBox In boxes
                If t IsNot Nothing Then
                    Dim CO As New Question_Option
                    With CO
                        .UID = System.Guid.NewGuid
                        .Question_ID = NGUID
                        .Option_Text = 'How to get value of txt_OptText, txt_OptText2, txt_OptText3, txt_OptText4'
                        .Option_Description = 'How to get value of txt_OptDesc, txt_OptDesc2, txt_OptDesc3, txt_OptDesc4'
                    End With
                    DB.Question_Options.InsertOnSubmit(CO)
                End If
            Next
                    DB.SubmitChanges()
                    MV_Default.SetActiveView(V_Success)

        Catch ex As Exception
            lbl_Failure.Text = ex.Message
            MV_Default.SetActiveView(V_Failure)

结束尝试

4

1 回答 1

1

您必须在 SQL Server 中使用 UNION ALL 在单个语句中的 SQL 脚本中插入多行。

   INSERT INTO Table 
     (Name, Location) 
  SELECT 'Name1', 'Location1' 
  UNION ALL
   SELECT 'Name2', 'Location2'
   UNION ALL
   SELECT 'Name3', 'Location3' 

参考这个这个

于 2013-01-20T09:03:38.610 回答