VB.NET 的 FirstOrDefaultDynamic 用法示例

Example usage FirstOrDefaultDynamic with VB.NET

我在一个项目中使用 VB,以及 EF.PLUS https://entityframework-plus.net/

我想使用 FirstOrDefaultDynamic,但我没有在 VB 中找到任何使用示例 - 所有示例都在 C# 中。

具体来说,我有一个字符串数组,我想在其中找到一个元素:

dim a = {
    {"a", "a1"},
    {"b", "b1"},
    {"c", "c1"}
}

dim elem = a.FirstOrDefaultDynamic("x(0) = y", new with {y="a"})

但是我在计算表达式时出错。

FirstOrDefaultDynamic 只接受字符串表达式作为参数,不接受谓词(函数)。

C# 示例是

var list = ctx.WhereDynamic(x => "x > 2").ToList();

但它仍然接受返回要计算的字符串表达式的函数。
关于 VB 语法的任何想法?

免责声明:我是项目的所有者Entity Framework Plus

仅支持 C# 语法。

因此,如果您想使用此库中的任何 Dynamic 方法(例如 FirstOrDefaultDynamic),您将需要坚持使用 C# 语法。

没有计划支持 VB 语法。

只是为了澄清 Jonathan Magnan 的答案:

用作参数的表达式字符串应使用 C# 语法,即使调用来自 VB。

用法示例:

Dim elem = a.FirstOrDefaultDynamic("x => x[0]=y", New With {.y = "MyTestVal"})