如何让 DbFunction 接受 EF Core 中的 DateOnly 参数?

Asg*_*wor 5 entity-framework ef-core-6.0

EOMONTH昨天,由于这个答案,我设法从 EF Core 调用 SQL函数,但现在我需要使用新的 DateOnly 类型来调用它:

class MyContext : DbContext
{
    [DbFunction(IsBuiltIn = true)]
    public static DateTime EOMONTH(DateOnly startDate)
        => throw new InvalidOperationException(
            "Don't call EOMONTH directly. It must to be translated to SQL " +
            "inside of a LINQ query.");
}
Run Code Online (Sandbox Code Playgroud)

我已经实现了对在实体中用作列的支持:

protected override void ConfigureConventions(ModelConfigurationBuilder builder)
{
    builder.Properties<DateOnly>()
        .HaveConversion<DateOnlyConverter, DateOnlyComparer>()
        .HaveColumnType("date");
}
Run Code Online (Sandbox Code Playgroud)

但是上面的定义EOMONTH在开始运行 API 时会抛出以下异常:

在此输入图像描述

我怎样才能让它接受这个自定义类型作为 a 的参数DbFunction