0

このコードを例に取りましょう:

<div style="overflow:auto;width:700px;"> 
                <asp:GridView ID="GridView1" runat="server" 
                    AllowPaging="True" AllowSorting="True"
                    AutoGenerateEditButton="True" DataMember="DefaultView" 
                    DataSourceID="SqlDataSource1" AutoGenerateColumns="False" 
                    DataKeyNames="..." CellPadding="4" ForeColor="#333333" Width="90%"
                    Height="90%" Font-Size="Small">
                    <RowStyle BackColor="#EFF3FB" />
                    <Columns>.
                             .
                             .
                        <asp:CommandField DeleteText="delete" ShowDeleteButton="True"></asp:CommandField>
                    </Columns>                    
                    <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                    <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
                    <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
                    <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                    <EditRowStyle BackColor="#2461BF" />
                    <AlternatingRowStyle BackColor="White" />
                </asp:GridView>

                </div>
                <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
                    ConnectionString="<%$ ConnectionStrings:DBUserConnectionString %>"                     
                    SelectCommand="SELECT ... FROM ... "
                    DeleteCommand="DELETE FROM ... WHERE ...=@...;">
                    </asp:SqlDataSource>

私はVBとASPが初めてなので、sqlDatasourceを使用してVBコードビハインドなしでGridviewを埋めています(これに注意してください)。すべてがaspxコードに表示されています。ブラウザで実行してソース コードを表示すると、html と大量の のみが表示されjavascript:__doPostBack、接続もテーブルも asp コントロールも表示されません。ただし、これがグリビューを埋める正しい方法であるかどうか、そしてそれが本当に安全であるかどうかを知りたいのですが、ブラウザで .aspx コードを表示する方法はありますか?

4

2 に答える 2

1

コードビハインドに入れるのと同じくらい安全です。ただし、ロジックをビューから分離できるように、この種のものをコード ビハインドに配置する必要があります。

于 2013-08-05T16:53:31.093 に答える