2

私はDropDownListを持っていますこれは次のようになります:

<asp:DropDownList ID="ddl1" runat="server" AutoPostBack="True" DataSourceID="lds1"
                                 DataTextField="Description" DataValueField="Description" Height="22px" OnSelectedIndexChanged="ddl1_SelectedIndexChanged"
                                Width="339px" ondatabound="ddl1_DataBound">                                    
</asp:DropDownList>

LinqDataSource

<asp:LinqDataSource ID="lds1" runat="server" ContextTypeName="MyDataContext"
                                TableName="MyView" > 

</asp:LinqDataSource>

私の見解:

SELECT     Description, COUNT(*) AS Quantity
FROM         MyTable
GROUP BY Description

ドロップダウンリストに、次のようなデータを表示したいと思います。

description1 32

ここで、description1はMyView.Descriptionの文字列で、32はMyView.Quantityの整数です。また、選択したドロップダウンアイテムの数量にプログラムでアクセスできる必要があります。

データのグループ化は、LinqDataSourceで直接行うこともできます。うまくいくものは何でも。

4

2 に答える 2

1

ListControl.AppendDataBoundItems プロパティを使用します。

AppendDataBoundItems ドキュメント

ドキュメントから: 「AppendDataBoundItems プロパティを使用すると、データ バインドが発生する前に ListControl オブジェクトに項目を追加できます。データ バインド後、項目コレクションには、データ ソースからの項目と以前に追加された項目の両方が含まれます。」

SelectedValue プロパティを使用して、プログラムで数量にアクセスします。

于 2012-10-24T10:13:54.497 に答える
1

結果を SQL レベルで連結し、結果を独自の変数に割り当て、これをドロップダウン リストで使用してみましたか?

私のSQLは磨く必要がありますが、私の記憶が正しければ、次のようなものです:

SELECT field1 + ' -' + CONVERT(NVARCHAR, field2) as DisplayValue

次に、ドロップダウン ボックスに DisplayValue を表示します。

于 2012-10-24T10:19:21.910 に答える