demoshop

NEWS

demo, trying to be the best.

站內搜尋載入中...

在Linq內使用亂數排序

  • 1910
  • 0

小鋪的首頁友站連結圖片跑馬燈是利用亂數排序的方法做的,之前是使用讀出來的資料丟到dataset後再做亂數排序,後來看了網路上的一些作法就發現了更讚的方式囉,這種常用的東西一定要紀錄的啦。

    以上三種方法的寫法都很棒,剛好demo正在學習LINQ所以就選擇了保哥的範例來實做,先建立一個檢視表(view)內容如下

    SELECT fw_imgUrl,NEWID() AS id, fw_webName FROM dbo.friendWeb
    

    利用NEWID()產生一個類似guid的不規則值,並且每次執行都會重新產生一次


    然後利用LINQ讀取出來就好啦

    dcFriendWebDataContext dc = new dcFriendWebDataContext();
    var emps = from p in dc.viewShowFriendImg
    orderby p.id
    select new { p.fw_imgUrl,p.fw_webName };
    

    因為p.id是利用NEWID()產生出來的亂數,所以拿p.id來排序就可以達到亂數排序的需求