讓我們將該代碼作爲例子:在asp.net代碼(.aspx文件)中顯示sql是否正確/安全?
<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 [email protected];">
</asp:SqlDataSource>
由於我是新來的VB和ASP我使用的SqlDataSource來填充GridView的不落後 VB代碼(請注意這一點),一切都被顯示在aspx代碼中。當我用瀏覽器運行它並查看源代碼時,它只顯示html和很多javascript:__doPostBack
's,沒有連接,沒有表格,甚至沒有asp控件。 但是,我想知道這是否是正確的方式來填寫grieps,如果它真的很安全,我的意思是有沒有辦法在瀏覽器上看到.aspx代碼?
它與您的網絡服務器一樣安全。所有的asp.net控件都被轉換爲html,而像SqlDataSource這樣的聲明性數據源控件只是服務器端的控件。所以在客戶端看不到任何東西。 –
應該是安全的。如果您的服務器設置正確並且沒有其他安全漏洞允許訪問您的文件系統,則無法查看服務器端代碼。 –