2016-06-14 20 views
2

ASP.NETリピータコントロールを使用して従業員のデータを表示しようとしています。このデータを従業員の名前で並べ替えて表示します。リピーターにバインドした後、データベースから取得したデータは正しい順序であるが、別の方法(従業員IDごとにソート)で表示される。これはどうしたらできますか?とにかくこれをやめることができますか?ASPリピータが正しい順序でデータを表示しない

<asp:Repeater ID="rptEmplist"> 
<HeaderTemplate> 
    <table class = "bootstrap-datatable datatable"> 
    <thead> 
     <tr> 
     <th>Employee No</th> 
     <th>Employee Name</th> 
     <th>Department Name</th> 
     </tr> 
    </thead> 
    <tbody> 
</HeaderTemplate> 
<ItemTemplate> 
    <tr> 
    <td><%# Eval("Empnum") %></td> 
    <td><%# Eval("Name") %></td> 
    <td><%# Eval("DptName") %></td> 
    </tr> 
</ItemTemplate> 
<FooterTempalate> 
    </tbody> 
    </table> 
</FooterTempalate> 
</asp:Repeater> 

C#のDataBindメソッド

private void BindDataToGrid() 
{ 
    DataTable empdt = BSL.GetEmployeeList(); // Just a another layer to connect with DB. 
    rptEmplist.DataSource = empdt;// Data seems to be in the correct order in empdt 
    rptEmplist.DataBind(); 
} 

C#のデータ検索:

public static DataTabe GetEmployeeList() 
{ 
    using(SqlCommand cmd = new SqlCommand("Get_EmpList")) 
    { 
     cmd.CommandType = CommandType.StoredProcedure; 
     return DSL.DBFactory.DBOperations.GetDataTable(cmd); 
    } 
} 

データベースのストアドプロシージャ:

Create Proc Get_EmpList 
AS 
BEGIN 
    SELECT * 
    FROM Employee 
    ORDER BY Name 
END 
+0

積載従業員の表示クエリまたはSP:でも、このクラスは、テーブルがソート可能行うものの、私がASPを供給しています、元のソート順を上書きしています。 – Mairaj

+0

リピーターが「正しい順序で」データを表示していない場合は、データを正しい順序でソートしていません。 –

+0

あなたは 'empdt'のデータがあなたの望む通りに良かったかどうかチェックしましたか? –

答えて

0

テーブルから「bootstrap-datatable datatable」を削除する必要がありました。リピータ

More about datatable

0
デフォルトで

ASP.NETリピータはソートをサポートしていない、あなたリストをフェッチすることができますリストを注文するためにlinqクエリを追加する

+0

あなたが質問を理解しているとは思わない –

関連する問題