Сетка даже не отображается в C # - PullRequest
0 голосов
/ 22 февраля 2019

Я создаю gridview с сервера SQL в C #.Хранимые процедуры работают просто замечательно.Но теперь, когда я создал gridview и компиляцию.Это даже не показывает!

Я сделал это несколько раз, но сейчас я не могу понять, почему он даже не показывает.

Это мой фронт.

<table cellpadding="2" cellspacing="0" border="0" width="100%"  runat="server" id="tblVacantes">
<tr>
    <td>
        <asp:GridView ID="gvApplicants" runat="server" AllowPaging="True" AllowSorting="true"
            AutoGenerateColumns="False" DataKeyNames="Id" CellPadding="5" ForeColor="#333333" 
            GridLines="None" PageSize="25" ShowFooter="True" Width="100%"  Font-Size="9pt"
            OnSorting="gvApplicants_Sorting" OnPageIndexChanging="gvApplicants_PageIndexChanging"
            OnRowDataBound="gvApplicants_RowDataBound" EnablePersistedSelection="true">     
            <Columns>
                <asp:BoundField HeaderText="Id" ReadOnly="True" 
                    SortExpression="Id" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" ItemStyle-VerticalAlign="Top" />
                <asp:BoundField DataField="Name" HeaderText="Name" ReadOnly="True" 
                    SortExpression="Name" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" ItemStyle-VerticalAlign="Top" />

                <asp:TemplateField HeaderText="Options" SortExpression="">
                    <HeaderStyle HorizontalAlign="Left" />
                    <ItemStyle HorizontalAlign="Left" />
                    <ItemTemplate>
                        <%# GetOpciones(Eval("username").ToString())%> 
                    </ItemTemplate>
                </asp:TemplateField>

                <asp:BoundField DataField="Username" HeaderText="Username" 
                    SortExpression="Username" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="Left"  ItemStyle-VerticalAlign="Top" />
            </Columns>
            <AlternatingRowStyle BackColor="Beige"  Height="32px"/>
            <RowStyle BackColor="White" Height="32px" />

            <FooterStyle BackColor="#780C28" Font-Bold="True" ForeColor="White" />
            <HeaderStyle BackColor="#780C28" Font-Bold="False" ForeColor="White" HorizontalAlign="Left"  />
            <PagerSettings Mode="NumericFirstLast" PageButtonCount="20" Position="Bottom"  />
            <PagerStyle  CssClass="pagination"  VerticalAlign="Middle"  HorizontalAlign="Center" />

            <SortedAscendingCellStyle BackColor="#FDF5AC" />
            <SortedAscendingHeaderStyle BackColor="#4D0000" />
            <SortedDescendingCellStyle BackColor="#FCF6C0" />
            <SortedDescendingHeaderStyle BackColor="#820000" />
        </asp:GridView>

    </td>
</tr>
</table>

Здесь я создаю всю свою логику, где храню результаты SQL в виде списка, где планирую отображать их в таблице.У меня есть все геттеры и сеттеры для ID, Nombre, Username и тому подобное.

    public void LoadData()
    {
        gvApplicants.DataSource = GetApplicants();
        gvApplicants.DataBind();
    }

    private List<ASF.Raffle.Entity.Staff> GetApplicants()
    {
        ASF.Raffle.BO.Staff dbCandidatos = new ASF.Raffle.BO.Staff();
        List<ASF.Raffle.Entity.Staff> candidatos;
        List<ASF.Raffle.Entity.Staff> candidatosFiltered = new List<ASF.Raffle.Entity.Staff>();
        //primero filtro activos e inactivos.
        return candidatos = dbCandidatos.GetAll();

    }
    protected string GetOpciones(string username)
    {
        ASF.Raffle.BO.Staff usr = new ASF.Raffle.BO.Staff();
        ASF.Raffle.Entity.Staff u = usr.GetByUsername(username);

        return usr.getAllOptions(u.Username);
    }

    public List<Entity.Staff> GetAll()
    {
        List<Entity.Staff> empleados = new List<Entity.Staff>();
        //SQL Command para llamar el stored procedure
        SqlCommand comando = new SqlCommand("dbo.[Empleados_GetAll]", base.Db);
        //Ejecuta consulta
        DataTable dtItem = base.Execute(comando);
        //Transforma el Datatable en una lista de ResponsableFinancieros.
        foreach (DataRow dr in dtItem.Rows)
            empleados.Add(GetFromDataRow(dr));

        return empleados;
    }

Но он даже не показывает таблицу, не выдает ошибку соединения или что-либо связанное.

Спасибо.

1 Ответ

0 голосов
/ 22 февраля 2019

Дело в том, что мне не хватало метода LoadData () в page_load.Поэтому теперь он показывает все правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...