У меня есть запрос, который я сделал, используя несколько соединений в SQL с использованием SP.Это хорошо работает в моей СУБД.Но когда я пытаюсь отобразить его в виде сетки, я получаю сообщение "Свойство или поле ' 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();
}