Мутация для создания задачи имеет следующую форму:
mutation b {
createTask(
data: {
content: "Task1"
completed: false
dateToDo: { connect: { id: "cjqzjvk6w000e0999a75mzwpx" } }
}
) {
id
}
}
Тип DayCreateOneWithoutTasksInput
, который запрашивает Prisma, генерируется автоматически и является ожидаемым для поля dataToDo
. Имя означает, что Prisma будет принимать тип, который создает один Day
узел, но не имеет полевых задач, или тип, который определяет соединение. Часть состояния WithoutTasksInput
существует, потому что тип может использоваться только во вложенной мутации, когда вы начинаете с задачи, поэтому Prisma уже имеет значение для заполнения поля задач на вложенном узле Day
, а вы нужно указать его, если вы создаете день вместо того, чтобы подключить существующий.
Если вы используете игровую площадку, вы можете исследовать схему, которая содержит все типы справа.
Исследователь схем на игровой площадке
Надеюсь, это поможет!
Согласно Спецификации C#, компилятор не генерирует вызов перегрузки к первой версии SelectMany. Первая версия SelectMany полезна для выравнивания Списка Списков в единственный плоский список.
public IEnumerable<string> Example(IEnumerable<IEnumerable<string>> enumerable) {
return enumerable.SelectMany(x => x);
}
Это не имеет сильного эквивалента в выражении запроса.
Посмотрите Раздел 7.15.2 из Спецификации Языка C# для получения дополнительной информации.
почему у нас есть 2 подписи SelectMany?
Таким образом, я могу использовать первый в своем коде.
var orders = Customers.SelectMany(c => c.Orders)