vb.net - linq中的后期绑定(bind)

标签 vb.net linq linq-to-sql

我有一个针对集合的简单 LINQ 查询。

   Dim oList = From w In Os
                Order By w.ClassTitle Descending
        Select w

不过,我希望能够做的是传递给它,无论它是下降还是上升。我不知道该怎么做。

另外,如果我在这里有一个where子句..说
where w.ClassTitle = "Test"

如何进行“测试以便我可以将其传递给 LINQ 查询。

谢谢
香农

最佳答案

我认为您不能将其“传递给”此查询,但是您可以执行常规查询

var oList = from w in Os
            select w

然后,当用户采取一些行动时,您可以在该事实之后简单地下订单。
oList.OrderBy(o => o.ClassTitle)

或者
oList.OrderByDescending(o => o.ClassTitle)

更新:

至于后期绑定(bind),您可以做的是编写一个执行 Where 子句的方法。也许使用扩展方法可能会奏效。我更熟悉 C#,所以我的语法可能有点偏离
public static IEnumerable<Os> ExecuteWhere (this Table<Os> table, Expression<Func<Os, bool>> predicate)
{
    return table.AsQueryable<Os>().Where(predicate);
}

然后这样称呼它:
oList.ExecuteWhere(a => a.ClassTitle == "Test")

关于vb.net - linq中的后期绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3575273/

相关文章:

vb.net - 是否有必要在我的响应 header 中设置内容长度?

vb.net - 具有多个输出的 VB 函数 - 结果分配

c# - LINQ 不区分大小写

c# - 在 XELement 中搜索一个值

c# - Linq-to-SQL - 在 C# 中调用存储过程抛出异常

javascript - 将 Div 内容保存为服务器上的图像

wpf - 如何将信息添加到 Bing map WPF Pushpin

c# - 如何使用 LINQ 编辑我的序列以便它仅返回一个元素

.net - LINQ-to-SQL 中与整数键的可空一对一关系

c# - 使用 LINQ 填充 DropDownList 的正确方法是什么?