protected override void GetData(SerializationInfo info)
{
info.AddValue("Query", QueryExpression);
info.AddValue("Limit", Limit);
if (OrderBy != null) {
var orderBy = OrderBy.ToArray();
info.AddValue("OrderBy", orderBy);
} else {
info.AddValue("OrderBy", null);
}
}