問題タブ [hotchocolate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
191 参照

.net-core - メモリ内のページング、データローダー、およびチョッピングのリレー

私はgraphqlを初めて使用し、現在ChilliCream graphqlワークショップに取り組んでいます。これに従ってページングを実装した後

メモがあります:「TrackType を使用した実装には 1 つの注意点があります。リゾルバー内で DataLoader を使用しており、最初に ID のリストをフェッチするため、基本的に常にすべてをフェッチし、メモリをチョップします。実際のプロジェクトではこれは、DataLoader 部分をミドルウェアに移動し、クエリ可能な ID の最初のページに移動することで、2 つのアクションに分割できます。また、DataLoader を使用してページング ロジックを適用する特別な IPagingHandler を実装することもできます。

2 つのアクションを分割する方法がわかりませんでした。どんな助けでも大歓迎です。

クエリ

トラッククエリ

トラックタイプ

データローダー

ありがとう

0 投票する
1 に答える
816 参照

hotchocolate - ObjectType フィールドによる型の拡張

私は HotChocolate と GraphQL が初めてで、型の拡張に問題があります。

ObjectTypeフィールドで型を拡張することは可能ですか? ドキュメントでStringType次の例を1つだけ見つけました。

私は似たようなことをしようとしましたが、この例外がありますHotChocolate.SchemaException: Unable to resolve type reference Output: ObjectType

ObjectType私の場合、フィールドで型を拡張する方法を教えてください。それとも、可能か不可能かだけ答えますか?

ありがとう!

0 投票する
0 に答える
368 参照

asp.net-core - HotChocolate GraphQL は、実行時に型拡張またはスキーマを追加します

バックエンド サービスが実行時にいつでも API に登録されたときに、新しい型またはクエリ拡張機能を動的に追加したいと考えています。したがって、ConfigureServices での起動時には、基本的に 1 つのテスト メソッドを含むクエリがあります。

起動後、AddType または AddTypeExtensionsFromString を呼び出して、新しいメソッド/タイプを API に追加する必要があります。HotChocolateでこれを行う方法はありますか?

0 投票する
1 に答える
235 参照

.net-core - プロジェクションを使用すると、データローダーで解決されたフィールドがロードされない

以下のようにコードを設定しています (.AddProjection() は既に Startup.cs ファイルに追加されています)。

このようにクエリすると:

以下の結果が得られます:

問題は、ネストされた注文詳細データがクエリ結果に表示されないことです (データ ローダーが同じクエリを実行しても)。

2 つのクエリが起動されていることがわかります

  1. Order テーブルの親データをロードするには
  2. dataLoader で注文明細を読み込むには
0 投票する
1 に答える
619 参照

asp.net-core - HotChocolate で Enum 値のシリアル化をどのように制御できますか?

HotChocolate はすべての上位カタツムリ ケースで列挙値をシリアル化します。これは、列挙値がHot Chocolate のようFooBarに推論されることにつながりますが、FooBar を提供し、Hot Chocolate は を無視するようです。FOO_BARvalue.ToString()Enum.GetName(value)[EnumMember(Value = "FooBar")]

シリアライゼーションを好きなように変更するにはどうすればよいですか?