无法在C#中使用别名为gridview的字段查找字段

时间:2019-02-22 23:26:43

标签: c# gridview

我有一个查询,我在使用SP的SQL中使用了多个联接。它在我的DBMS中运行良好。但是,当我尝试在gridview中显示它时,出现“在数据集中找不到属性或字段' tipoId '”。这很奇怪,我在想是由于别名吗?这很奇怪,因为第一列没有出现任何错误“ eq.id

查询:

SELECT eq.id, tipeq.descripcion as tipoId, per.descripcion as periodoId, tagId, eq.asignado asignado, emp.Nombre as empleadoId
    FROM Raffle.dbo.Equipos eq 
  inner join dbo.Empleados emp ON emp.equipoId = eq.id 
  inner join dbo.Periodo per ON per.id = eq.periodoId
  inner join dbo.TipoEquipo tipeq ON tipeq.id = eq.tipoId;

正面:

    <asp:GridView ID="gvEquipos" 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="gvEquipos_Sorting" OnPageIndexChanging="gvEquipos_PageIndexChanging"
        OnRowDataBound="gvEquipos_RowDataBound" EnablePersistedSelection="true">     
        <Columns>
            <asp:BoundField DataField="Id" HeaderText="Id" ReadOnly="True" 
                SortExpression="Id" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" ItemStyle-VerticalAlign="Top" />
            <asp:BoundField DataField="TipoId" HeaderText="Tipo de Equipo" ReadOnly="True" 
                SortExpression="TipoId" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" ItemStyle-VerticalAlign="Top" />
            <asp:BoundField DataField="TagId" HeaderText="TagId" ReadOnly="True" 
                SortExpression="TagId" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" ItemStyle-VerticalAlign="Top" />
            <asp:BoundField DataField="Asignado" HeaderText="Asignado" ReadOnly="True" 
                SortExpression="Asignado" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" ItemStyle-VerticalAlign="Top" />
            <asp:BoundField DataField="PeriodoId" HeaderText="PeriodoId" 
                SortExpression="PeriodoId" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="Left"  ItemStyle-VerticalAlign="Top" />
        </Columns>

后端:

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

    private List<ASF.Raffle.Entity.Equipos> GetApplicants()
    {
        ASF.Raffle.BO.Equipos equipos = new ASF.Raffle.BO.Equipos();
        List<ASF.Raffle.Entity.Equipos> equiposTodos;
        List<ASF.Raffle.Entity.Equipos> equiposFiltered = new List<ASF.Raffle.Entity.Equipos>();
        //primero filtro activos e inactivos.
        return equiposTodos = equipos.GetAll();

    }

0 个答案:

没有答案