问题标签 [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 投票
1 回答
591 浏览

.net - 输入类型对象可以包含接口类型的属性吗?

我才开始在 .net 平台上学习 GraphQL。如果输入类型对象可以包含接口类型的属性,那么如何在 HotChocolate 库中配置它?

模型示例:

GraphQL 查询示例:

Startup.cs 示例:

现在我得到一个异常“无法从类型引用 Input: ILocationFilter 推断或解析模式类型”。

顺便说一句:如果删除接口一切都会工作。

我应该配置什么来更正使用接口类型的属性?

0 投票
1 回答
2031 浏览

asp.net - 序列化一个字典使用 GraphQL 和 Hot Choclate 到动态 JSON

我正在使用 Web API 将 Hot Chocolate(GraphQL) 添加到现有的 ASP.Net Core 项目中,并重用 Web API 使用的模型。其中一个模型具有 IDictionary<string, object> 属性,该属性通过 Web API 序列化为动态 JSON。

该模型

使用 Web API 可以序列化为

使用 Hot Chocolate,我正在重用模型并在启动时添加 GraphQL

生成的模式变为

并且只能检索到密钥

有以下回应

我想设置 Hot Chocolate,以便编写一个 GraphQL 查询,该查询提供与 Web API 相同的动态结果。

更新

源是一个 JSON 字符串,它被反序列化为 Dictionary<string, object>

问题是生成的字典没有递归序列化为 Dictionary<string, object>。

0 投票
1 回答
1034 浏览

graphql - 在字段上使用 UseFiltering() 时 hotchocolate 抛出错误

我有一个非常简单的 setyp,我将 graphql 放在实体框架数据上下文(sql server)上。

我试图让过滤工作。我试过将 .UseFiltering() 添加到这样的字段描述符中......

但它会在启动时导致此错误...

HotChocolate.SchemaException:“无法从类型引用中推断或解析模式类型Input: System.Char。”

我假设我在某个地方做错了什么......

0 投票
1 回答
119 浏览

graphql - UseSelection 导致触发额外的 sql 语句

我将 hotchoc 全部连接到 EF 和 sqlserver db。这是我的查询...

如果我的帐户方法中没有 [UseSelection],则 sql 语句会提取帐户表上的所有字段,但不会加入馆藏。如果我将 [UseSelection] 放在帐户上,那么它会正确选择我想要的字段并加入控股以获得holdingId。但是,它也会触发这个 sql 语句......

这个额外的 sql 语句是做什么用的?我做错了什么吗?

我的帐户实体...

表结构非常简单。Holdings 表有一个 AccountId。Account 表有很多字段,但没有任何可疑之处。

0 投票
1 回答
237 浏览

c# - 动态 IQueryable 连接查询

背景:

给定以下两个实体通过一对一的关系连接:

并具有以下Query模型:

问题

如何将QueryasIQueryable应用于Parent(或Details)实体?

基于我的用例的注释:

  • Query类不能有两个子类ParentDetails(应该展平)
  • ParentDB SQL 查询应该获取与and中的两个条件都匹配的结果Details(如果条件失败以获取详细信息,则 parent 不应该出现在结果中)。
  • 模型中可能有很长的可选字段列表Query。这意味着数据库查询应该是动态且足够智能的,以知道如何构建查询并知道中的每个字段Query属于哪个实体ParentDetails(即我不想要一个解决方案,我添加条件来检查orDob中是否存在Query不是)

用例:

我正在使用HotChocolate框架来集成 GraphQL,它使用表达式树来构建查询。这里提到了我要解决的问题

您的支持和建议将不胜感激!

0 投票
2 回答
1672 浏览

.net - 热巧克力中的文件上传

我一直在寻找一种使用 Hot Chocolate 上传文件(例如图像)的方法,但我似乎在他们的文档中找不到任何关于它的信息。

有谁知道该怎么做?

提前致谢

0 投票
1 回答
1062 浏览

graphql - 如何在 Hotchocolate 10.4.3 中设置执行超时

我们将 Hotchocolate 10.4.3 用于我的 .net 核心服务。我们正在使用代码优先的方法。所有设置都在 startup.cs 中,与他们的 Star War 示例完全相同。Hotchocolate 网站说请求的默认超时是 30 秒,但我发现我的应用程序在 1 分钟后抛出事务错误。我想将其增加到 2 分钟。

还有为什么即使在超时异常之后服务器仍然执行所有操作。在我的所有代码都正确执行后,我总是在最后看到事务错误。

如果一切都将正常运行,为什么还要抛出错误?

我还在学习graphql。如果任何听起来不正确,请纠正我。

0 投票
1 回答
1653 浏览

graphql - 如何在 Hot Chocolate 中拆分查询类型的解析器

我正在尝试使用 .net 核心的 Hot Chocolate 库来实现标准的 GraphQL 实现,其中用于读取数据的解析器属于根 Query 对象。像这样:

这是我试图遵循文档所做的,但它没有按我预期的那样工作:

启动.cs

查询.cs

TodoQueries.cs

我做错了什么?

0 投票
4 回答
3283 浏览

asp.net-core - 使用 GraphQL API 的清洁架构 CQRS

我正在使用 API 服务器(ASP.NET Core)。为了防止将来出现意大利面条式代码和其他讨厌的东西,我按照 Clean Architecture/CQRS(使用 MediatR)设计了系统。

我正在考虑将 GraphQL 用于 API 而不是 REST(热巧克力 GraphQL)。在 HotChocolate GraphQL 的几个示例中,使用 GraphQL-EF 机制直接查询数据库。虽然这看起来很有好处,但我担心从长远来看这可能会使代码复杂化。数据库结构可能会发生变化等。在我看来,API 应该与存储库层保持分离。即使做更多的工作,我相信 GraphQL 应该改为与 CQRS 通信。

请你的想法!

0 投票
1 回答
644 浏览

graphql - 在单个进程中托管 HotChocolate 服务器和 Strawberry Shake 客户端

我最初将 Blazor 应用程序开发为 Blazor 服务器应用程序,但长期目标是在 Web 程序集 + 服务器配置中部署相同的应用程序。

我的偏好是在创建 Blazor 服务器原型时从编码的第一天开始采用 GraphQL,但这会造成 GraphQL 客户端代码和 HotChocolate 服务器代码在同一进程中运行的情况。这可能吗?

HotChocolate 文档中的以下代码显示可以通过在 schema.Execute(q) 中表达查询来向 Hotchocolate 提交 GraphQL 查询,但是我更喜欢编写完整的 GraphQL 堆栈并在完整堆栈运行时跳过网络活动在单个 Blazor 服务器进程中。

https://github.com/ChilliCream/hotchocolate-docs/blob/master/docs/introduction.md