列中的SqlDataSource行

时间:2014-01-17 15:31:19

标签: c# sql .net sql-server

我的数据库看起来像:

_______________
column1|column2|
name1  |  5    |
name1  |  3    |
name1  |  1    |
name2  |  2    |
name2  |  4    |
````````````````

我正在使用VS 2012和asp:DataList,我正试图以这种方式显示数据:

_________________
name1 | 5 | 3 | 1|
name2 | 2 | 4 |  |
`````````````````

我尝试了很多方法:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:finchsize_polibudaConnectionString %>"
SelectCommand="SELECT a1.[przedmiot], a1.[ocena], a2.[ocena] from [oceny] as a1, [oceny] as a2 where a1.[ocena] != a2.[ocena] and a1.przedmiot = a2.przedmiot;">
</asp:SqlDataSource>
    <table>
        <td>
            <asp:DataList ID="DataListOcenyDzieciak" runat="server" 
        DataSourceID="SqlDataSource1" RepeatColumns="1" 
        >
        <ItemTemplate>
            <asp:Label ID="przedmiotLabel" runat="server" Text='<%# Eval("przedmiot") %>' />
            <asp:Label ID="Label1" runat="server" Text='<%# Eval("ocena") %>' />
            <br />
        </ItemTemplate>

    </asp:DataList>

        </td>

但它没有用。你知道我应该怎么做吗?

1 个答案:

答案 0 :(得分:0)

有趣的是,您希望它在以下后面呈现超过2列:

<ItemTemplate>
        <asp:Label ID="przedmiotLabel" runat="server" Text='<%# Eval("przedmiot") %>' />
        <asp:Label ID="Label1" runat="server" Text='<%# Eval("ocena") %>' />
        <br />
</ItemTemplate>

首先,您提供的数据不一致,即。你无法在数据视图中重复它。例如,您知道最多会有多少列数据。如果你这样做,那么我会编写一个for循环并用所需格式的数据填充dataTable并将其附加到datalist。