【问题标题】:Declare Array of Non-Nullables using Annotation-Based HotChocolate使用基于注释的 HotChocolate 声明不可为空的数组
【发布时间】:2021-10-10 17:09:39
【问题描述】:

我不知道如何使用基于注释的 HotChocolate 来使数组的元素不可为空。我正在为我的班级创建一个 gql 架构,如下所示:

foos: [Foo!]!

但是,目前我能为我的班级想出的只是:

class Bar
{
[GraphQLNonNullType]
public List<Foo> foos {get; set;}
}

我使用的是 C# 9.0

【问题讨论】:

  • 您的 C# 版本是否支持可为空的引用类型?
  • 是的,它支持可为空的引用类型,我使用的是 C# 9

标签: hotchocolate


【解决方案1】:

我的问题解决了!

当我使用 C# 9 时,我的项目未配置为强制执行显式可空性。我更改了我的 .csproj 配置文件以包含该行

<Nullable>enable</Nullable>

这具有不再需要使用 [GraphQLNonNullType] 属性的额外好处。我的新代码如下所示:

class Bar
{
    public List<Foo> foos {get; set;}
}

这会生成我期望的 gql 架构。

如果您不想更改整个项目设置以达到相同的结果,这里还有另一种选择。

class Bar
{
    #nullable enable
    public List<Foo> foos {get; set;}
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-21
    • 2011-10-29
    • 2021-10-05
    • 2022-07-05
    • 1970-01-01
    • 2015-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多