如何使用NHibernate的ICriteria API选择Random Row?

And*_*sky 6 random nhibernate icriteria

我可以使用NHibernate的ICriteriaAPI 选择随机行吗?

Mau*_*fer 14

正如cundh2o所说,它是特定于DBMS的.但是您可以继承Order类并定义自己的自定义顺序.例如,对于SQL Server:

public class RandomOrder: Order {
    public RandomOrder() : base("", true) {}
    public override SqlString ToSqlString(ICriteria criteria, ICriteriaQuery criteriaQuery) {
        return new SqlString("newid()");
    }
}
Run Code Online (Sandbox Code Playgroud)