簡體   English   中英

Graphql Hotchocolate 中的多個查詢類型

[英]Multiple Query Type in Graphql Hotchocolate

我正在使用熱巧克力 graphql。 我有一個場景,我有兩個單獨的查詢類型類。

  1. PostQuery -> 包含與帖子相關的查詢
  2. UserQuery -> 包含與用戶相關的查詢

我的文件夾結構

在此處輸入圖像描述

這是我的配置方式

 .AddAuthorization()
    //for inmemory subscription
    .AddInMemorySubscriptions()
    .AddQueryType<PostQuery>()
    .AddQueryType<UserQuery>()
    .AddMutationType<Mutation>()
    .AddSubscriptionType<Subscription>()
    .AddGlobalObjectIdentification()
    // Registers the filter convention of MongoDB
    .AddMongoDbFiltering()
    // Registers the sorting convention of MongoDB
    .AddMongoDbSorting()
    // Registers the projection convention of MongoDB
    .AddMongoDbProjections()
    // Registers the paging providers of MongoDB
    .AddMongoDbPagingProviders();

但是,我收到以下錯誤

System.ArgumentException: The root type `Query` has already been registered

無論如何它可以配置,否則我必須將所有內容放在一個 class 中?

您需要注冊查詢類型“Query”並添加解析器來處理多個“Query”類型的模式

builder.Services
.AddQueryType(q => q.Name("Query"))
.AddType<PostQuery>()
.AddType<UserQuery>()

在您的查詢類中:

PostQuery.cs
[ExtendObjectType(Name="Query")]
public List<Post> GetAllPosts()
{
    return List<Post>{...};
}

UserQuery.cs
[ExtendObjectType(Name="Query")]
public List<User> GetAllUsers()
{
    return List<User>{...};
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM