listOrders.DataSource = (from sp in dbdata.Specifications
                         join ord in dbdata.Orders on sp.O_id equals ord.O_id
                         join prd in dbdata.Products on ord.O_id equals prd.O_ID
                         where sp.Approve == "Yes" && 
                         sp.Awailable_BOM == "Yes" && 
                         prd.Hours_prd == null
                         orderby sp.O_id descending
                         select sp.O_id).Distinct();
in here I am tring to get desceding values. But it always gets ascending values. if I remove "Distinct()" it works properly but after adding "Distinct()" this problem occurs.
 
     
    