У меня есть gridview, который использует JOIN. Два столбца, которые из разных таблиц, имеют одно и то же имя:Показать два столбца с тем же именем в Gridview
<asp:GridView ID="viewThemeTypeAssociationsGridView" runat="server" AutoGenerateColumns="False"
BackColor="#DEBA84" BorderColor="#DEBA84" BorderStyle="None" BorderWidth="1px"
DataKeyNames="PK_User" CellPadding="3" CellSpacing="2" DataSourceID="SqlDataSource6"
OnRowDataBound="viewThemeTypeAssociationsGridView_OnRowDataBound">
<Columns>
<asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
<asp:BoundField DataField="Name" HeaderText="Organization Team" SortExpression="Name" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource6" runat="server" ConnectionString="<%$ ConnectionStrings:ApplicationServices %>"
SelectCommand="
SELECT [User].[PK_User]
,[User].[Name]
,[OrganizationalTeam].[Name]
FROM [User]
LEFT JOIN [OrganizationalTeam] ON [OrganizationalTeam].[PK_OrganizationalTeam] = [User].[OrganizationalTeamId]
WHERE COALESCE(cast([OrganizationalTeam].[InternalExternal] as varchar(255)), 'null') LIKE @internalExternalParam
GROUP BY [User].[Name]
,[OrganizationalTeam].[Name]
,[User].[PK_User]
">
<SelectParameters>
<asp:QueryStringParameter Name="internalExternalParam" DefaultValue="%" Type="String" />
</SelectParameters>
У меня возникли проблемы с его отображением. То, как я бы предположить, что это будет сделано, как следует:
<asp:BoundField DataField="[OrganizationalTeam].[Name]" HeaderText=" Team Name" SortExpression="[OrganizationalTeam].[Name]" />
<asp:BoundField DataField="[User].[Name]" HeaderText="Team" SortExpression="[User].[Name]" />
Это вызывает следующее сообщение об ошибке:
Пользователь ни DataColumn, ни DataRelation для таблицы DefaultView.
Как представить два столбца из разных таблиц с тем же именем.