私はGridView
をSQLテーブルにリンクしています。表には未知数または可変数の列があります。列の数と列の名前の両方が可変です。すべての列を更新できるようにsqlDataSource
に動的なUpdateCommand
を設定することは可能ですか?そうであれば;どうやって?可変数の列でGridViewを更新することはできますか?
コードは、私が試した:
は<asp:GridView ID="GridView1" AutoGenerateColumns="True" ShowHeaderWhenEmpty ="True" DataSourceID="UpdateSqlDataSource"
CssClass = "table" runat="server" AllowSorting="True" BackColor="White" BorderColor="#E7E7FF" BorderStyle="None" BorderWidth="1px"
CellPadding="3" DataKeyNames="UpdateID" ShowFooter="True"
AutoGenerateDeleteButton="true" AutoGenerateSelectButton ="true" AutoGenerateEditButton="true">
<AlternatingRowStyle BackColor="#F7F7F7" />
<Columns>
</Columns>
<FooterStyle BackColor="#B5C7DE" ForeColor="#4A3C8C" />
<HeaderStyle BackColor="#4A3C8C" Font-Bold="True" ForeColor="#F7F7F7" />
<PagerStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" HorizontalAlign="Right" />
<RowStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" />
<SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="#F7F7F7" />
<SortedAscendingCellStyle BackColor="#F4F4FD" />
<SortedAscendingHeaderStyle BackColor="#5A4C9D" />
<SortedDescendingCellStyle BackColor="#D8D8F0" />
<SortedDescendingHeaderStyle BackColor="#3E3277" />
</asp:GridView>
<asp:SqlDataSource ID ="UpdateSqlDataSource" runat ="server" ConnectionString="<%$ ConnectionStrings:MachineUpdateDataBaseConnectionString %>"
DeleteCommand="DELETE FROM [MachineUpdate] WHERE [UpdateID] = @UpdateID"
SelectCommand="SELECT * FROM [MachineUpdate]" UpdateCommand="UPDATE SET [MachineUpdate] = @MachineUpdate WHERE [UpdateID] = @UpdateID[*] = @* WHERE [UpdateID] = @UpdateID">
<DeleteParameters>
<asp:Parameter Name="UpdateID" Type="Int32" />
</DeleteParameters>
</asp:SqlDataSource>
あなたが試したことを私たちに教えてください。私たちはそこから助けてくれるでしょう。 –
何を更新しようとしていますか?行の内容は? – Ewerton
ヒント:columns.addをループ内に追加します。 –