У меня есть сетка, которая заполняется из сохраненной процедуры через соединение с базой данных.
Я передаю 5 значений (значения из текстового поля при вводе данных пользователем) в proc с помощью команды базы данных вызовов.Я точно знаю, что то, через что я прохожу, должно отображать 34 строки, однако в виде сетки отображается только 1?
У меня есть другое приложение asp.net, которое, кажется, работает нормально и не может понять, где я ошибся.
C #
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Font-Size="Small" Width="50%" OnRowDataBound="GridView1_RowDataBound">
<RowStyle HorizontalAlign="Center" />
<Columns>
<asp:BoundField DataField="Results" HeaderText="Results" ItemStyle-Width="100px" ItemStyle-Wrap="false" ItemStyle-CssClass="checkIt" SortExpression="Results" HeaderStyle-CssClass="text-center" />
<asp:TemplateField ItemStyle-Width="75px" ItemStyle-Wrap="false">
<ItemTemplate>
<asp:CheckBox ID="Address_Check" runat="server" ItemStyle-Width="75px" />
<asp:HiddenField ID="ID" runat="server" Value='<%# Eval("ID") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<HeaderStyle BackColor="Silver" ForeColor="Black" />
</asp:GridView>
CALLDATABASE
public static List<Data_Checker_WebformResult> CheckAdd(string Postcode, int Number, string Building_Name, string Add1, string BusinessName, string Town)
{
using (var ctx = new DataAppDBDataContext())
{
return ctx.Data_Checker_Webform( Postcode, Number, Building_Name, Add1, BusinessName, Town).ToList();
}
}
обратите внимание, что proc исключает значения NULL в зависимости от комбинаций заполняемых текстовых полей.
ON BUTTONCLICK
protected void Search_Click(object sender, EventArgs e)
{
var checkADD = Calldatabase.CheckAdd(Txt_Postcode.Text, Convert.ToInt32((Txt_Building_Number.Text.Length == 0) ? null : Txt_Building_Number.Text), ((Txt_Building_Name.Text.Length == 0) ? null : Txt_Building_Name.Text), ((Txt_Address.Text.Length == 0) ? null : Txt_Address.Text), ((Txt_Business_Name.Text.Length == 0) ? null : Txt_Business_Name.Text), ((Txt_Town.Text.Length == 0) ? null : Txt_Town.Text));
//(Convert.ToInt32(Txt_Building_Number.Text)), Txt_Building_Name.Text, Txt_Address.Text, Txt_Business_Name.Text, Txt_Town.Text);
GridView1.DataSource = checkADD;
GridView1.DataBind();
}
Кажется, что это работает без ошибок или исключений, просто не отображаются все результаты, которые, я знаю, есть.