我需要在我的网站的几个页面上的SQL Server数据库中的视图中显示一些数据。我已通过在我的web.config
内使用SqlDataSource
,然后在我的.aspx
页面内使用GridView
控件来显示数据。更好的解决SqlDataSource?
现在,这个工程,但我读了一些论坛,这是不好的做法,使用SqlDataSource
?我可能需要有管理员/用户在将来过滤数据的能力,所以我不确定这将如何与我目前的实施工作。
到目前为止我的代码看起来是这样的:
在web.config
文件:
<connectionStrings>
<add name="Test1.ConnectionString"
connectionString="Data Source=...."
providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
</system.web>
而这样的事情在我的aspx
<body id="wrap" >
<form runat="server">
<asp:GridView ID="GridView1" runat="server" AllowSorting="True" AutoGenerateColumns="False"
BackColor="White" BorderColor="#CCCCCC"
BorderStyle="None" BorderWidth="1px" CellPadding="3"
DataSourceID="SqlDataSource1" Height="500px" Width="408px">
<Columns>
<asp:BoundField DataField="Title" HeaderText="Title" ReadOnly="True" SortExpression="Title">
<ItemStyle Width="400px" HorizontalAlign="Center" Height="100px" BorderColor="#CCCCCC" BorderStyle="Solid" BorderWidth="1px" />
</asp:BoundField>
<asp:BoundField DataField="Result" HeaderText="Result" ReadOnly="True" SortExpression="Result" >
<ItemStyle HorizontalAlign="Center" Height="100px" BorderColor="#CCCCCC" BorderStyle="Solid" BorderWidth="1px" />
</asp:BoundField>
</Columns>
<FooterStyle BackColor="White" ForeColor="#002756" />
<HeaderStyle BackColor="#003466" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="White" ForeColor="#002756" HorizontalAlign="Left" />
<RowStyle ForeColor="#002756" />
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings: Test1.ConnectionString %>"
SelectCommand="SELECT * FROM [Test1.ConnectionString]">
</asp:SqlDataSource>
</form>
</body>
所以我的问题是是否有更好的请记住,我可能需要一个用户/管理员按照某些标准过滤数据的功能?
您没有使用代码来获取数据的任何特定原因? – Izzy
我来自一个PHP背景,对于asp.net来说还很新,所以仍然试图让我的头在这附近。但我想这会是更好的解决方案? – MariaL