使用LINQ 2 SQL从DataBase表中检索随机记录/行

时间:2011-08-04 11:10:40

标签: asp.net linq-to-sql

我在数据库表中被称为学生我们做了一些像彩票这样的事情,知道哪些学生将成为学校游戏中的赢家

public static List<Students> GetAll()
{
    List<Students> list = new List<Students>();
    var query = from c in new HsInternetDBDataContext().Students
                orderby c.DateCreated ascending
                select c;
    foreach (DAL.Student dr in query.ToList())
    {
        l.Add(new Quotes(dr));
    }
    return list;
}

我想做的是从此表中检索随机学生

1 个答案:

答案 0 :(得分:0)

同样的问题发布在另一个博客上,我在发布时引用了答案:

public static Quotes GetRandomStudents()
{
    HsInternetDBDataContext db = new HsInternetDBDataContext();

    var query = from c in db.Students select c;
    int count = query.Count();
    if (query.Count() > 0)
    {
        Random r = new Random();
        return new Students(query.ToList()[r.Next(0, count)]);
    }
    else
    {
        return new Students();
    }
}

希望有帮助,因为它适用于另一个具有相同的情况