diff --git a/src/HotChocolate/Core/src/Abstractions/ErrorCodes.cs b/src/HotChocolate/Core/src/Abstractions/ErrorCodes.cs index b4a6b0d12c0..d8e046b1f4c 100644 --- a/src/HotChocolate/Core/src/Abstractions/ErrorCodes.cs +++ b/src/HotChocolate/Core/src/Abstractions/ErrorCodes.cs @@ -206,6 +206,7 @@ public static class Schema public const string InterfaceNotImplemented = "SCHEMA_INTERFACE_NO_IMPL"; public const string DuplicateTypeName = "HC0065"; public const string DuplicateMutationErrorTypeName = "HC0066"; + public const string DupplicateFieldNames = "HCXXXX"; /// /// The middleware order of a field pipeline is incorrect. diff --git a/src/HotChocolate/Core/src/Types/Internal/FieldInitHelper.cs b/src/HotChocolate/Core/src/Types/Internal/FieldInitHelper.cs index c19925213ca..2e9eaed8b95 100644 --- a/src/HotChocolate/Core/src/Types/Internal/FieldInitHelper.cs +++ b/src/HotChocolate/Core/src/Types/Internal/FieldInitHelper.cs @@ -8,6 +8,8 @@ using HotChocolate.Types; using HotChocolate.Types.Descriptors.Definitions; using HotChocolate.Types.Helpers; +using static HotChocolate.Utilities.ErrorHelper; +using IHasName = HotChocolate.Types.IHasName; #nullable enable @@ -191,16 +193,7 @@ private static FieldCollection CompleteFieldsInternal( { if (declaringMember is IType type && fields.Length == 0) { - context.ReportError(SchemaErrorBuilder.New() - .SetMessage(string.Format( - CultureInfo.InvariantCulture, - TypeResources.FieldInitHelper_NoFields, - type.Kind.ToString(), - context.Type.Name)) - .SetCode(ErrorCodes.Schema.MissingType) - .SetTypeSystemObject(context.Type) - .AddSyntaxNode((type as IHasSyntaxNode)?.SyntaxNode) - .Build()); + context.ReportError(NoFields(context.Type, type)); return FieldCollection.Empty; } @@ -209,7 +202,18 @@ private static FieldCollection CompleteFieldsInternal( ((IFieldCompletion)field).CompleteField(context, declaringMember); } - return new FieldCollection(fields); + var collection = FieldCollection.TryCreate(fields, out var duplicateFieldNames); + + if (duplicateFieldNames?.Count > 0) + { + context.ReportError( + DuplicateFieldName( + context.Type, + declaringMember, + duplicateFieldNames)); + } + + return collection; } internal static Type CompleteRuntimeType(IType type, Type? runtimeType) diff --git a/src/HotChocolate/Core/src/Types/Properties/TypeResources.Designer.cs b/src/HotChocolate/Core/src/Types/Properties/TypeResources.Designer.cs index e1c08c676bb..540c04f96bd 100644 --- a/src/HotChocolate/Core/src/Types/Properties/TypeResources.Designer.cs +++ b/src/HotChocolate/Core/src/Types/Properties/TypeResources.Designer.cs @@ -10,8 +10,8 @@ namespace HotChocolate.Properties { using System; - - + + /// /// A strongly-typed resource class, for looking up localized strings, etc. /// @@ -23,15 +23,15 @@ namespace HotChocolate.Properties { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] internal class TypeResources { - + private static global::System.Resources.ResourceManager resourceMan; - + private static global::System.Globalization.CultureInfo resourceCulture; - + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] internal TypeResources() { } - + /// /// Returns the cached ResourceManager instance used by this class. /// @@ -45,7 +45,7 @@ internal TypeResources() { return resourceMan; } } - + /// /// Overrides the current thread's CurrentUICulture property for all /// resource lookups using this strongly typed resource class. @@ -59,7 +59,7 @@ internal TypeResources() { resourceCulture = value; } } - + /// /// Looks up a localized string similar to An Applied Directive is an instances of a directive as applied to a schema element. This type is NOT specified by the graphql specification presently.. /// @@ -68,7 +68,7 @@ internal static string @__AppliedDirective_Description { return ResourceManager.GetString("__AppliedDirective_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Directive arguments can have names and values. The values are in graphql SDL syntax printed as a string. This type is NOT specified by the graphql specification presently.. /// @@ -77,7 +77,7 @@ internal static string @__DirectiveArgument_Description { return ResourceManager.GetString("__DirectiveArgument_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Cycle in object graph detected.. /// @@ -86,7 +86,7 @@ internal static string AnyType_CycleInObjectGraph { return ResourceManager.GetString("AnyType_CycleInObjectGraph", resourceCulture); } } - + /// /// Looks up a localized string similar to The argument `{0}` has no type. Specify the type with `.Argument("{0}", a.Type<MyType>())` to fix this issue.. /// @@ -95,7 +95,7 @@ internal static string Argument_TypeIsNull { return ResourceManager.GetString("Argument_TypeIsNull", resourceCulture); } } - + /// /// Looks up a localized string similar to The argument type has to be an input-type.. /// @@ -104,7 +104,7 @@ internal static string ArgumentDescriptor_InputTypeViolation { return ResourceManager.GetString("ArgumentDescriptor_InputTypeViolation", resourceCulture); } } - + /// /// Looks up a localized string similar to Argument `{0}` of non-null type `{1}` must not be null.. /// @@ -113,7 +113,7 @@ internal static string ArgumentValueBuilder_NonNull { return ResourceManager.GetString("ArgumentValueBuilder_NonNull", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified binding cannot be handled.. /// @@ -122,7 +122,7 @@ internal static string BindingCompiler_AddBinding_BindingCannotBeHandled { return ResourceManager.GetString("BindingCompiler_AddBinding_BindingCannotBeHandled", resourceCulture); } } - + /// /// Looks up a localized string similar to The `Boolean` scalar type represents `true` or `false`.. /// @@ -131,7 +131,7 @@ internal static string BooleanType_Description { return ResourceManager.GetString("BooleanType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The `Byte` scalar type represents non-fractional whole numeric values. Byte can represent values between 0 and 255.. /// @@ -140,7 +140,7 @@ internal static string ByteType_Description { return ResourceManager.GetString("ByteType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Could not resolve the claims principal.. /// @@ -149,7 +149,7 @@ internal static string ClaimsPrincipalParameterExpressionBuilder_NoClaimsFound { return ResourceManager.GetString("ClaimsPrincipalParameterExpressionBuilder_NoClaimsFound", resourceCulture); } } - + /// /// Looks up a localized string similar to A segment of a collection.. /// @@ -158,7 +158,7 @@ internal static string CollectionSegmentType_Description { return ResourceManager.GetString("CollectionSegmentType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to A flattened list of the items.. /// @@ -167,7 +167,7 @@ internal static string CollectionSegmentType_Items_Description { return ResourceManager.GetString("CollectionSegmentType_Items_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Information to aid in pagination.. /// @@ -176,7 +176,7 @@ internal static string CollectionSegmentType_PageInfo_Description { return ResourceManager.GetString("CollectionSegmentType_PageInfo_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified IComplexTypeFieldBindingBuilder-implementation is not supported.. /// @@ -185,7 +185,7 @@ internal static string ComplexTypeBindingBuilder_FieldBuilderNotSupported { return ResourceManager.GetString("ComplexTypeBindingBuilder_FieldBuilderNotSupported", resourceCulture); } } - + /// /// Looks up a localized string similar to The field binding builder is not completed and cannot be added.. /// @@ -194,7 +194,7 @@ internal static string ComplexTypeBindingBuilder_FieldNotComplete { return ResourceManager.GetString("ComplexTypeBindingBuilder_FieldNotComplete", resourceCulture); } } - + /// /// Looks up a localized string similar to A connection to a list of items.. /// @@ -203,7 +203,7 @@ internal static string ConnectionType_Description { return ResourceManager.GetString("ConnectionType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to A list of edges.. /// @@ -212,7 +212,7 @@ internal static string ConnectionType_Edges_Description { return ResourceManager.GetString("ConnectionType_Edges_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to A flattened list of the nodes.. /// @@ -221,7 +221,7 @@ internal static string ConnectionType_Nodes_Description { return ResourceManager.GetString("ConnectionType_Nodes_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Information to aid in pagination.. /// @@ -230,7 +230,7 @@ internal static string ConnectionType_PageInfo_Description { return ResourceManager.GetString("ConnectionType_PageInfo_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Identifies the total count of items in the connection.. /// @@ -239,7 +239,7 @@ internal static string ConnectionType_TotalCount_Description { return ResourceManager.GetString("ConnectionType_TotalCount_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The complexity cannot be below one.. /// @@ -248,7 +248,7 @@ internal static string CostDirective_ComplexityCannotBeBelowOne { return ResourceManager.GetString("CostDirective_ComplexityCannotBeBelowOne", resourceCulture); } } - + /// /// Looks up a localized string similar to Default multiplier cannot be below two.. /// @@ -257,7 +257,7 @@ internal static string CostDirective_DefaultMultiplierCannotBeBelowTwo { return ResourceManager.GetString("CostDirective_DefaultMultiplierCannotBeBelowTwo", resourceCulture); } } - + /// /// Looks up a localized string similar to The DataLoader key cannot be null or empty.. /// @@ -266,7 +266,7 @@ internal static string DataLoaderRegistry_KeyNullOrEmpty { return ResourceManager.GetString("DataLoaderRegistry_KeyNullOrEmpty", resourceCulture); } } - + /// /// Looks up a localized string similar to The DataLoader `{0}` needs to be register with the dependency injection provider.. /// @@ -275,7 +275,7 @@ internal static string DataLoaderResolverContextExtensions_CreateDataLoader_Abst return ResourceManager.GetString("DataLoaderResolverContextExtensions_CreateDataLoader_AbstractType", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to create DataLoader `{0}`.. /// @@ -284,7 +284,7 @@ internal static string DataLoaderResolverContextExtensions_CreateDataLoader_Unab return ResourceManager.GetString("DataLoaderResolverContextExtensions_CreateDataLoader_UnableToCreate", resourceCulture); } } - + /// /// Looks up a localized string similar to No DataLoader registry was registered with your dependency injection.. /// @@ -293,7 +293,7 @@ internal static string DataLoaderResolverContextExtensions_RegistryIsNull { return ResourceManager.GetString("DataLoaderResolverContextExtensions_RegistryIsNull", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to register a DataLoader with your DataLoader registry.. /// @@ -302,7 +302,7 @@ internal static string DataLoaderResolverContextExtensions_UnableToRegister { return ResourceManager.GetString("DataLoaderResolverContextExtensions_UnableToRegister", resourceCulture); } } - + /// /// Looks up a localized string similar to The `DateTime` scalar represents an ISO-8601 compliant date time type.. /// @@ -311,7 +311,7 @@ internal static string DateTimeType_Description { return ResourceManager.GetString("DateTimeType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The `Date` scalar represents an ISO-8601 compliant date type.. /// @@ -320,7 +320,7 @@ internal static string DateType_Description { return ResourceManager.GetString("DateType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The built-in `Decimal` scalar type.. /// @@ -329,7 +329,7 @@ internal static string DecimalType_Description { return ResourceManager.GetString("DecimalType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The DataLoader `{0}` was not of the requested type `{1}`.. /// @@ -338,7 +338,7 @@ internal static string DefaultDataLoaderRegistry_GetOrRegister { return ResourceManager.GetString("DefaultDataLoaderRegistry_GetOrRegister", resourceCulture); } } - + /// /// Looks up a localized string similar to The fieldName cannot be null or empty.. /// @@ -347,7 +347,7 @@ internal static string DefaultNamingConventions_FormatFieldName_EmptyOrNull { return ResourceManager.GetString("DefaultNamingConventions_FormatFieldName_EmptyOrNull", resourceCulture); } } - + /// /// Looks up a localized string similar to Only methods are allowed.. /// @@ -356,7 +356,7 @@ internal static string DefaultResolverCompilerService_CompileSubscribe_OnlyMetho return ResourceManager.GetString("DefaultResolverCompilerService_CompileSubscribe_OnlyMethodsAllowed", resourceCulture); } } - + /// /// Looks up a localized string similar to The public method should already have ensured that we do not have members other than method or property at this point.. /// @@ -365,7 +365,7 @@ internal static string DefaultResolverCompilerService_CreateResolver_ArgumentVal return ResourceManager.GetString("DefaultResolverCompilerService_CreateResolver_ArgumentValidationError", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified member has to be a method or a property.. /// @@ -374,7 +374,7 @@ internal static string DefaultTypeInspector_MemberInvalid { return ResourceManager.GetString("DefaultTypeInspector_MemberInvalid", resourceCulture); } } - + /// /// Looks up a localized string similar to The `@defer` directive may be provided for fragment spreads and inline fragments to inform the executor to delay the execution of the current fragment to indicate deprioritization of the current fragment. A query with `@defer` directive will cause the request to potentially return multiple responses, where non-deferred data is delivered in the initial response and data deferred is delivered in a subsequent response. `@include` and `@skip` take precedence over `@defer`.. /// @@ -383,7 +383,7 @@ internal static string DeferDirectiveType_Description { return ResourceManager.GetString("DeferDirectiveType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Deferred when true.. /// @@ -392,7 +392,7 @@ internal static string DeferDirectiveType_If_Description { return ResourceManager.GetString("DeferDirectiveType_If_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to If this argument label has a value other than null, it will be passed on to the result of this defer directive. This label is intended to give client applications a way to identify to which fragment a deferred result belongs to.. /// @@ -401,7 +401,7 @@ internal static string DeferDirectiveType_Label_Description { return ResourceManager.GetString("DeferDirectiveType_Label_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Only type system objects are allowed as schema type.. /// @@ -410,7 +410,7 @@ internal static string DependencyDescriptorBase_OnlyTsoIsAllowed { return ResourceManager.GetString("DependencyDescriptorBase_OnlyTsoIsAllowed", resourceCulture); } } - + /// /// Looks up a localized string similar to Deprecations include a reason for why it is deprecated, which is formatted using Markdown syntax (as specified by CommonMark).. /// @@ -419,7 +419,7 @@ internal static string DeprecatedDirectiveType_ReasonDescription { return ResourceManager.GetString("DeprecatedDirectiveType_ReasonDescription", resourceCulture); } } - + /// /// Looks up a localized string similar to The @deprecated directive is used within the type system definition language to indicate deprecated portions of a GraphQL service’s schema,such as deprecated fields on a type or deprecated enum values.. /// @@ -428,7 +428,7 @@ internal static string DeprecatedDirectiveType_TypeDescription { return ResourceManager.GetString("DeprecatedDirectiveType_TypeDescription", resourceCulture); } } - + /// /// Looks up a localized string similar to A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document. /// @@ -439,7 +439,7 @@ internal static string Directive_Description { return ResourceManager.GetString("Directive_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The argument name is invalid.. /// @@ -448,7 +448,7 @@ internal static string Directive_GetArgument_ArgumentNameIsInvalid { return ResourceManager.GetString("Directive_GetArgument_ArgumentNameIsInvalid", resourceCulture); } } - + /// /// Looks up a localized string similar to The directive '{0}' has no argument with the name '{1}'.. /// @@ -457,7 +457,7 @@ internal static string Directive_GetArgumentValue_UnknownArgument { return ResourceManager.GetString("Directive_GetArgumentValue_UnknownArgument", resourceCulture); } } - + /// /// Looks up a localized string similar to Use `locations`.. /// @@ -466,7 +466,7 @@ internal static string Directive_UseLocation { return ResourceManager.GetString("Directive_UseLocation", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified directive `@{0}` is unique and cannot be added twice.. /// @@ -475,7 +475,7 @@ internal static string DirectiveCollection_DirectiveIsUnique { return ResourceManager.GetString("DirectiveCollection_DirectiveIsUnique", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified directive `@{0}` is not allowed on the current location `{1}`.. /// @@ -484,7 +484,7 @@ internal static string DirectiveCollection_LocationNotAllowed { return ResourceManager.GetString("DirectiveCollection_LocationNotAllowed", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to an argument definition. /// @@ -493,7 +493,7 @@ internal static string DirectiveLocation_ArgumentDefinition { return ResourceManager.GetString("DirectiveLocation_ArgumentDefinition", resourceCulture); } } - + /// /// Looks up a localized string similar to A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.. /// @@ -502,7 +502,7 @@ internal static string DirectiveLocation_Description { return ResourceManager.GetString("DirectiveLocation_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to an enum definition.. /// @@ -511,7 +511,7 @@ internal static string DirectiveLocation_Enum { return ResourceManager.GetString("DirectiveLocation_Enum", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to an enum value definition.. /// @@ -520,7 +520,7 @@ internal static string DirectiveLocation_EnumValue { return ResourceManager.GetString("DirectiveLocation_EnumValue", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to a field.. /// @@ -529,7 +529,7 @@ internal static string DirectiveLocation_Field { return ResourceManager.GetString("DirectiveLocation_Field", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to a field definition.. /// @@ -538,7 +538,7 @@ internal static string DirectiveLocation_FieldDefinition { return ResourceManager.GetString("DirectiveLocation_FieldDefinition", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to a fragment definition.. /// @@ -547,7 +547,7 @@ internal static string DirectiveLocation_FragmentDefinition { return ResourceManager.GetString("DirectiveLocation_FragmentDefinition", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to a fragment spread.. /// @@ -556,7 +556,7 @@ internal static string DirectiveLocation_FragmentSpread { return ResourceManager.GetString("DirectiveLocation_FragmentSpread", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to an inline fragment.. /// @@ -565,7 +565,7 @@ internal static string DirectiveLocation_InlineFragment { return ResourceManager.GetString("DirectiveLocation_InlineFragment", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to an input object field definition.. /// @@ -574,7 +574,7 @@ internal static string DirectiveLocation_InputFieldDefinition { return ResourceManager.GetString("DirectiveLocation_InputFieldDefinition", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to an input object type definition.. /// @@ -583,7 +583,7 @@ internal static string DirectiveLocation_InputObject { return ResourceManager.GetString("DirectiveLocation_InputObject", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to an interface definition.. /// @@ -592,7 +592,7 @@ internal static string DirectiveLocation_Interface { return ResourceManager.GetString("DirectiveLocation_Interface", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to a mutation operation.. /// @@ -601,7 +601,7 @@ internal static string DirectiveLocation_Mutation { return ResourceManager.GetString("DirectiveLocation_Mutation", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to an object type definition.. /// @@ -610,7 +610,7 @@ internal static string DirectiveLocation_Object { return ResourceManager.GetString("DirectiveLocation_Object", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to a query operation.. /// @@ -619,7 +619,7 @@ internal static string DirectiveLocation_Query { return ResourceManager.GetString("DirectiveLocation_Query", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to a scalar definition.. /// @@ -628,7 +628,7 @@ internal static string DirectiveLocation_Scalar { return ResourceManager.GetString("DirectiveLocation_Scalar", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to a schema definition.. /// @@ -637,7 +637,7 @@ internal static string DirectiveLocation_Schema { return ResourceManager.GetString("DirectiveLocation_Schema", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to a subscription operation.. /// @@ -646,7 +646,7 @@ internal static string DirectiveLocation_Subscription { return ResourceManager.GetString("DirectiveLocation_Subscription", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to a union definition.. /// @@ -655,7 +655,7 @@ internal static string DirectiveLocation_Union { return ResourceManager.GetString("DirectiveLocation_Union", resourceCulture); } } - + /// /// Looks up a localized string similar to Location adjacent to a variable definition.. /// @@ -664,7 +664,7 @@ internal static string DirectiveLocation_VariableDefinition { return ResourceManager.GetString("DirectiveLocation_VariableDefinition", resourceCulture); } } - + /// /// Looks up a localized string similar to The `{0}` directive does not declare any location on which it is valid.. /// @@ -673,7 +673,7 @@ internal static string DirectiveType_NoLocations { return ResourceManager.GetString("DirectiveType_NoLocations", resourceCulture); } } - + /// /// Looks up a localized string similar to Replace Middleware with `Use`.. /// @@ -682,7 +682,7 @@ internal static string DirectiveType_ReplaceWithUse { return ResourceManager.GetString("DirectiveType_ReplaceWithUse", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to convert the argument value to the specified type.. /// @@ -691,7 +691,7 @@ internal static string DirectiveType_UnableToConvert { return ResourceManager.GetString("DirectiveType_UnableToConvert", resourceCulture); } } - + /// /// Looks up a localized string similar to Only property expressions are allowed to describe a directive type argument.. /// @@ -700,7 +700,7 @@ internal static string DirectiveTypeDescriptor_OnlyProperties { return ResourceManager.GetString("DirectiveTypeDescriptor_OnlyProperties", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified location `{0}` is not supported.. /// @@ -709,7 +709,7 @@ internal static string DirectiveTypeFactory_LocationNotSupported { return ResourceManager.GetString("DirectiveTypeFactory_LocationNotSupported", resourceCulture); } } - + /// /// Looks up a localized string similar to A cursor for use in pagination.. /// @@ -718,7 +718,7 @@ internal static string EdgeType_Cursor_Description { return ResourceManager.GetString("EdgeType_Cursor_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to An edge in a connection.. /// @@ -727,7 +727,7 @@ internal static string EdgeType_Description { return ResourceManager.GetString("EdgeType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Edge types that have a non-object node are not supported.. /// @@ -736,7 +736,7 @@ internal static string EdgeType_IsInstanceOfType_NonObject { return ResourceManager.GetString("EdgeType_IsInstanceOfType_NonObject", resourceCulture); } } - + /// /// Looks up a localized string similar to The item at the end of the edge.. /// @@ -745,7 +745,7 @@ internal static string EdgeType_Node_Description { return ResourceManager.GetString("EdgeType_Node_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The enum type `{0}` has no values.. /// @@ -754,7 +754,7 @@ internal static string EnumType_NoValues { return ResourceManager.GetString("EnumType_NoValues", resourceCulture); } } - + /// /// Looks up a localized string similar to The enum type extension can only be merged with an enum type.. /// @@ -763,7 +763,7 @@ internal static string EnumTypeExtension_CannotMerge { return ResourceManager.GetString("EnumTypeExtension_CannotMerge", resourceCulture); } } - + /// /// Looks up a localized string similar to The enum value `{0}` of the enum type extension is not assignable with the target enum type.. /// @@ -772,7 +772,7 @@ internal static string EnumTypeExtension_ValueTypeInvalid { return ResourceManager.GetString("EnumTypeExtension_ValueTypeInvalid", resourceCulture); } } - + /// /// Looks up a localized string similar to One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.. /// @@ -781,7 +781,7 @@ internal static string EnumValue_Description { return ResourceManager.GetString("EnumValue_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The inner value of enum value cannot be null or empty.. /// @@ -790,7 +790,7 @@ internal static string EnumValue_ValueIsNull { return ResourceManager.GetString("EnumValue_ValueIsNull", resourceCulture); } } - + /// /// Looks up a localized string similar to The field `{0}` must only declare additional arguments to an implemented field that are nullable.. /// @@ -799,7 +799,7 @@ internal static string ErrorHelper_AdditionalArgumentNotNullable { return ResourceManager.GetString("ErrorHelper_AdditionalArgumentNotNullable", resourceCulture); } } - + /// /// Looks up a localized string similar to The argument `{0}` of the implemented field `{1}` must be defined. The field `{2}` must include an argument of the same name for every argument defined on the implemented field of the interface type `{3}`.. /// @@ -808,7 +808,7 @@ internal static string ErrorHelper_ArgumentNotImplemented { return ResourceManager.GetString("ErrorHelper_ArgumentNotImplemented", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to resolve the interface type. For more details look at the error object.. /// @@ -817,7 +817,7 @@ internal static string ErrorHelper_CompleteInterfacesHelper_UnableToResolveInter return ResourceManager.GetString("ErrorHelper_CompleteInterfacesHelper_UnableToResolveInterface", resourceCulture); } } - + /// /// Looks up a localized string similar to The argument `{0}` does not exist on the directive `{1}`.. /// @@ -826,7 +826,7 @@ internal static string ErrorHelper_DirectiveCollection_ArgumentDoesNotExist { return ResourceManager.GetString("ErrorHelper_DirectiveCollection_ArgumentDoesNotExist", resourceCulture); } } - + /// /// Looks up a localized string similar to The argument `{0}` of directive `{1}` mustn't be null.. /// @@ -835,7 +835,7 @@ internal static string ErrorHelper_DirectiveCollection_ArgumentNonNullViolation return ResourceManager.GetString("ErrorHelper_DirectiveCollection_ArgumentNonNullViolation", resourceCulture); } } - + /// /// Looks up a localized string similar to The directive arguments have invalid values: '{0}' at {1}.. /// @@ -844,7 +844,7 @@ internal static string ErrorHelper_DirectiveCollection_ArgumentValueTypeIsWrong return ResourceManager.GetString("ErrorHelper_DirectiveCollection_ArgumentValueTypeIsWrong", resourceCulture); } } - + /// /// Looks up a localized string similar to The maximum number of nodes that can be fetched at once is {0}. This selection tried to fetch {1} nodes that exceeded the maximum allowed amount.. /// @@ -853,7 +853,7 @@ internal static string ErrorHelper_FetchedToManyNodesAtOnce { return ResourceManager.GetString("ErrorHelper_FetchedToManyNodesAtOnce", resourceCulture); } } - + /// /// Looks up a localized string similar to The field `{0}` must be implement by {1} type `{2}`.. /// @@ -862,7 +862,7 @@ internal static string ErrorHelper_FieldNotImplemented { return ResourceManager.GetString("ErrorHelper_FieldNotImplemented", resourceCulture); } } - + /// /// Looks up a localized string similar to There is no object type implementing interface `{0}`.. /// @@ -871,7 +871,7 @@ internal static string ErrorHelper_InterfaceHasNoImplementation { return ResourceManager.GetString("ErrorHelper_InterfaceHasNoImplementation", resourceCulture); } } - + /// /// Looks up a localized string similar to The named argument `{0}` on field `{1}` must accept the same type `{2}` (invariant) as that named argument on the interface `{3}`.. /// @@ -880,7 +880,7 @@ internal static string ErrorHelper_InvalidArgumentType { return ResourceManager.GetString("ErrorHelper_InvalidArgumentType", resourceCulture); } } - + /// /// Looks up a localized string similar to Field `{0}` must return a type which is equal to or a sub‐type of (covariant) the return type `{1}` of the interface field.. /// @@ -889,7 +889,7 @@ internal static string ErrorHelper_InvalidFieldType { return ResourceManager.GetString("ErrorHelper_InvalidFieldType", resourceCulture); } } - + /// /// Looks up a localized string similar to The middleware pipeline order for the field `{0}` is invalid. Middleware order is important especially with data pipelines. The correct order of a data pipeline is as follows: UseDbContext -> UsePaging -> UseProjection -> UseFiltering -> UseSorting. You may omit any of these middleware or have other middleware in between but you need to abide by the overall order. Your order is: {1}.. /// @@ -898,7 +898,7 @@ internal static string ErrorHelper_MiddlewareOrderInvalid { return ResourceManager.GetString("ErrorHelper_MiddlewareOrderInvalid", resourceCulture); } } - + /// /// Looks up a localized string similar to The {0} type `{1}` has to at least define one field in order to be valid.. /// @@ -907,7 +907,7 @@ internal static string ErrorHelper_NeedsOneAtLeastField { return ResourceManager.GetString("ErrorHelper_NeedsOneAtLeastField", resourceCulture); } } - + /// /// Looks up a localized string similar to The node resolver `{0}` must specify exactly one argument.. /// @@ -916,7 +916,7 @@ internal static string ErrorHelper_NodeResolver_MustHaveExactlyOneIdArg { return ResourceManager.GetString("ErrorHelper_NodeResolver_MustHaveExactlyOneIdArg", resourceCulture); } } - + /// /// Looks up a localized string similar to The node resolver `{0}` must return an object type.. /// @@ -925,7 +925,7 @@ internal static string ErrorHelper_NodeResolver_MustReturnObject { return ResourceManager.GetString("ErrorHelper_NodeResolver_MustReturnObject", resourceCulture); } } - + /// /// Looks up a localized string similar to The type `{0}` implementing the node interface must expose an id field.. /// @@ -934,7 +934,7 @@ internal static string ErrorHelper_NodeResolver_NodeTypeHasNoId { return ResourceManager.GetString("ErrorHelper_NodeResolver_NodeTypeHasNoId", resourceCulture); } } - + /// /// Looks up a localized string similar to The type `{0}` implements the node interface but does not provide a node resolver for re-fetching.. /// @@ -943,7 +943,7 @@ internal static string ErrorHelper_NodeResolverMissing { return ResourceManager.GetString("ErrorHelper_NodeResolverMissing", resourceCulture); } } - + /// /// Looks up a localized string similar to The type {0} is invalid because the runtime type is a {1}. It is not supported to have type system members as runtime types.. /// @@ -952,7 +952,7 @@ internal static string ErrorHelper_NoSchemaTypesAllowedAsRuntimeType { return ResourceManager.GetString("ErrorHelper_NoSchemaTypesAllowedAsRuntimeType", resourceCulture); } } - + /// /// Looks up a localized string similar to The {0} type must also declare all interfaces declared by implemented interfaces.. /// @@ -961,7 +961,7 @@ internal static string ErrorHelper_NotTransitivelyImplemented { return ResourceManager.GetString("ErrorHelper_NotTransitivelyImplemented", resourceCulture); } } - + /// /// Looks up a localized string similar to The field `{0}.{1}` has no resolver.. /// @@ -970,7 +970,7 @@ internal static string ErrorHelper_ObjectField_HasNoResolver { return ResourceManager.GetString("ErrorHelper_ObjectField_HasNoResolver", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to infer or resolve the type of field {0}.{1}. Try to explicitly provide the type like the following: `descriptor.Field("field").Type<List<StringType>>()`.. /// @@ -979,7 +979,7 @@ internal static string ErrorHelper_ObjectType_UnableToInferOrResolveType { return ResourceManager.GetString("ErrorHelper_ObjectType_UnableToInferOrResolveType", resourceCulture); } } - + /// /// Looks up a localized string similar to Oneof Input Object `{0}` must only have nullable fields without default values. Edit your type and make the field{1} `{2}` nullable and remove any defaults.. /// @@ -988,7 +988,7 @@ internal static string ErrorHelper_OneofInputObjectMustHaveNullableFieldsWithout return ResourceManager.GetString("ErrorHelper_OneofInputObjectMustHaveNullableFieldsWithoutDefaults", resourceCulture); } } - + /// /// Looks up a localized string similar to There is no node resolver registered for type `{0}`.. /// @@ -997,7 +997,7 @@ internal static string ErrorHelper_Relay_NoNodeResolver { return ResourceManager.GetString("ErrorHelper_Relay_NoNodeResolver", resourceCulture); } } - + /// /// Looks up a localized string similar to Required argument {0} cannot be deprecated.. /// @@ -1006,7 +1006,7 @@ internal static string ErrorHelper_RequiredArgumentCannotBeDeprecated { return ResourceManager.GetString("ErrorHelper_RequiredArgumentCannotBeDeprecated", resourceCulture); } } - + /// /// Looks up a localized string similar to Required input field {0} cannot be deprecated.. /// @@ -1015,7 +1015,7 @@ internal static string ErrorHelper_RequiredFieldCannotBeDeprecated { return ResourceManager.GetString("ErrorHelper_RequiredFieldCannotBeDeprecated", resourceCulture); } } - + /// /// Looks up a localized string similar to Field names starting with `__` are reserved for the GraphQL specification.. /// @@ -1024,7 +1024,7 @@ internal static string ErrorHelper_TwoUnderscoresNotAllowedField { return ResourceManager.GetString("ErrorHelper_TwoUnderscoresNotAllowedField", resourceCulture); } } - + /// /// Looks up a localized string similar to Argument names starting with `__` are reserved for the GraphQL specification.. /// @@ -1033,7 +1033,7 @@ internal static string ErrorHelper_TwoUnderscoresNotAllowedOnArgument { return ResourceManager.GetString("ErrorHelper_TwoUnderscoresNotAllowedOnArgument", resourceCulture); } } - + /// /// Looks up a localized string similar to Names starting with `__` are reserved for the GraphQL specification.. /// @@ -1042,7 +1042,7 @@ internal static string ErrorHelper_TwoUnderscoresNotAllowedOnDirectiveName { return ResourceManager.GetString("ErrorHelper_TwoUnderscoresNotAllowedOnDirectiveName", resourceCulture); } } - + /// /// Looks up a localized string similar to The event message parameter can only be used in a subscription context.. /// @@ -1051,7 +1051,7 @@ internal static string EventMessageParameterExpressionBuilder_MessageNotFound { return ResourceManager.GetString("EventMessageParameterExpressionBuilder_MessageNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified key `{0}` does not exist on `context.ContextData`.. /// @@ -1060,7 +1060,7 @@ internal static string ExpressionHelper_GetGlobalStateWithDefault_NoDefaults { return ResourceManager.GetString("ExpressionHelper_GetGlobalStateWithDefault_NoDefaults", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified key `{0}` does not exist on `context.ScopedContextData`.. /// @@ -1069,7 +1069,7 @@ internal static string ExpressionHelper_GetScopedStateWithDefault_NoDefaultValue return ResourceManager.GetString("ExpressionHelper_GetScopedStateWithDefault_NoDefaultValue", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified context key does not exist.. /// @@ -1078,7 +1078,7 @@ internal static string ExpressionHelper_ResolveScopedContextData_KeyDoesNotExist return ResourceManager.GetString("ExpressionHelper_ResolveScopedContextData_KeyDoesNotExist", resourceCulture); } } - + /// /// Looks up a localized string similar to The non-generic IExecutable interface cannot be used as a type in the schema.. /// @@ -1087,7 +1087,7 @@ internal static string ExtendedTypeReferenceHandler_NonGenericExecutableNotAllow return ResourceManager.GetString("ExtendedTypeReferenceHandler_NonGenericExecutableNotAllowed", resourceCulture); } } - + /// /// Looks up a localized string similar to Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.. /// @@ -1096,7 +1096,7 @@ internal static string Field_Description { return ResourceManager.GetString("Field_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The max expected field count cannot be smaller than 1.. /// @@ -1105,7 +1105,7 @@ internal static string FieldInitHelper_CompleteFields_MaxFieldCountToSmall { return ResourceManager.GetString("FieldInitHelper_CompleteFields_MaxFieldCountToSmall", resourceCulture); } } - + /// /// Looks up a localized string similar to Could not parse the native value of input field `{0}`.. /// @@ -1114,7 +1114,7 @@ internal static string FieldInitHelper_InvalidDefaultValue { return ResourceManager.GetString("FieldInitHelper_InvalidDefaultValue", resourceCulture); } } - + /// /// Looks up a localized string similar to {0} `{1}` has no fields declared.. /// @@ -1123,7 +1123,7 @@ internal static string FieldInitHelper_NoFields { return ResourceManager.GetString("FieldInitHelper_NoFields", resourceCulture); } } - + /// /// Looks up a localized string similar to The `Float` scalar type represents signed double-precision fractional values as specified by [IEEE 754](http://en.wikipedia.org/wiki/IEEE_floating_point).. /// @@ -1132,7 +1132,7 @@ internal static string FloatType_Description { return ResourceManager.GetString("FloatType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to decode the id string.. /// @@ -1141,7 +1141,7 @@ internal static string IdSerializer_UnableToDecode { return ResourceManager.GetString("IdSerializer_UnableToDecode", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to encode data.. /// @@ -1150,7 +1150,7 @@ internal static string IdSerializer_UnableToEncode { return ResourceManager.GetString("IdSerializer_UnableToEncode", resourceCulture); } } - + /// /// Looks up a localized string similar to The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"4"`) or integer (such as `4`) input value will be accepted as an ID.. /// @@ -1159,7 +1159,7 @@ internal static string IdType_Description { return ResourceManager.GetString("IdType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Included when true.. /// @@ -1168,7 +1168,7 @@ internal static string IncludeDirectiveType_IfDescription { return ResourceManager.GetString("IncludeDirectiveType_IfDescription", resourceCulture); } } - + /// /// Looks up a localized string similar to Directs the executor to include this field or fragment only when the `if` argument is true.. /// @@ -1177,7 +1177,7 @@ internal static string IncludeDirectiveType_TypeDescription { return ResourceManager.GetString("IncludeDirectiveType_TypeDescription", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to set the input field value.. /// @@ -1186,7 +1186,7 @@ internal static string InputField_CannotSetValue { return ResourceManager.GetString("InputField_CannotSetValue", resourceCulture); } } - + /// /// Looks up a localized string similar to The input object type can only parse object value literals.. /// @@ -1195,7 +1195,7 @@ internal static string InputObjectType_CannotParseLiteral { return ResourceManager.GetString("InputObjectType_CannotParseLiteral", resourceCulture); } } - + /// /// Looks up a localized string similar to The input object `{0}` does not have any fields.. /// @@ -1204,7 +1204,7 @@ internal static string InputObjectType_NoFields { return ResourceManager.GetString("InputObjectType_NoFields", resourceCulture); } } - + /// /// Looks up a localized string similar to Only properties are allowed for input types.. /// @@ -1213,7 +1213,7 @@ internal static string InputObjectTypeDescriptor_OnlyProperties { return ResourceManager.GetString("InputObjectTypeDescriptor_OnlyProperties", resourceCulture); } } - + /// /// Looks up a localized string similar to The input object type extension can only be merged with an input object type.. /// @@ -1222,7 +1222,7 @@ internal static string InputObjectTypeExtension_CannotMerge { return ResourceManager.GetString("InputObjectTypeExtension_CannotMerge", resourceCulture); } } - + /// /// Looks up a localized string similar to The input value of type `{0}` must not be null.. /// @@ -1231,7 +1231,7 @@ internal static string InputTypeNonNullCheck_ValueIsNull { return ResourceManager.GetString("InputTypeNonNullCheck_ValueIsNull", resourceCulture); } } - + /// /// Looks up a localized string similar to A GraphQL-formatted string representing the default value for this input value.. /// @@ -1240,7 +1240,7 @@ internal static string InputValue_DefaultValue { return ResourceManager.GetString("InputValue_DefaultValue", resourceCulture); } } - + /// /// Looks up a localized string similar to Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.. /// @@ -1249,7 +1249,7 @@ internal static string InputValue_Description { return ResourceManager.GetString("InputValue_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The arguments of the interface field {0} from interface {1} and {2} do not match and are implemented by object type {3}.. /// @@ -1258,7 +1258,7 @@ internal static string InterfaceImplRule_ArgumentsDontMatch { return ResourceManager.GetString("InterfaceImplRule_ArgumentsDontMatch", resourceCulture); } } - + /// /// Looks up a localized string similar to Object type {0} does not implement all arguments of field {1} from interface {2}.. /// @@ -1267,7 +1267,7 @@ internal static string InterfaceImplRule_ArgumentsNotImpl { return ResourceManager.GetString("InterfaceImplRule_ArgumentsNotImpl", resourceCulture); } } - + /// /// Looks up a localized string similar to Object type {0} does not implement the field {1} from interface {2}.. /// @@ -1276,7 +1276,7 @@ internal static string InterfaceImplRule_FieldNotImpl { return ResourceManager.GetString("InterfaceImplRule_FieldNotImpl", resourceCulture); } } - + /// /// Looks up a localized string similar to The return type of the interface field {0} from interface {1} and {2} do not match and are implemented by object type {3}.. /// @@ -1285,7 +1285,7 @@ internal static string InterfaceImplRule_FieldTypeInvalid { return ResourceManager.GetString("InterfaceImplRule_FieldTypeInvalid", resourceCulture); } } - + /// /// Looks up a localized string similar to The return type of the interface field {0} does not match the field declared by object type {1}.. /// @@ -1294,7 +1294,7 @@ internal static string InterfaceImplRule_ReturnTypeInvalid { return ResourceManager.GetString("InterfaceImplRule_ReturnTypeInvalid", resourceCulture); } } - + /// /// Looks up a localized string similar to The interface base class cannot be used as interface implementation declaration.. /// @@ -1303,7 +1303,7 @@ internal static string InterfaceTypeDescriptor_InterfaceBaseClass { return ResourceManager.GetString("InterfaceTypeDescriptor_InterfaceBaseClass", resourceCulture); } } - + /// /// Looks up a localized string similar to A field of an interface can only be inferred from a property or a method.. /// @@ -1312,7 +1312,7 @@ internal static string InterfaceTypeDescriptor_MustBePropertyOrMethod { return ResourceManager.GetString("InterfaceTypeDescriptor_MustBePropertyOrMethod", resourceCulture); } } - + /// /// Looks up a localized string similar to The interface type extension can only be merged with an interface type.. /// @@ -1321,7 +1321,7 @@ internal static string InterfaceTypeExtension_CannotMerge { return ResourceManager.GetString("InterfaceTypeExtension_CannotMerge", resourceCulture); } } - + /// /// Looks up a localized string similar to The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.. /// @@ -1330,7 +1330,7 @@ internal static string IntType_Description { return ResourceManager.GetString("IntType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The `Long` scalar type represents non-fractional signed whole 64-bit numeric values. Long can represent values between -(2^63) and 2^63 - 1.. /// @@ -1339,7 +1339,7 @@ internal static string LongType_Description { return ResourceManager.GetString("LongType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The multiplier path scalar represents a valid GraphQL multiplier path string.. /// @@ -1348,7 +1348,7 @@ internal static string MultiplierPathType_Description { return ResourceManager.GetString("MultiplierPathType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Adding an error type `{0}` to field `{1}` failed as mutation conventions weren't enabled.. /// @@ -1357,7 +1357,7 @@ internal static string MutationConvention_ShouldBeEnabled_WhenAddingErrorType { return ResourceManager.GetString("MutationConvention_ShouldBeEnabled_WhenAddingErrorType", resourceCulture); } } - + /// /// Looks up a localized string similar to The multiplier path scalar represents a valid GraphQL multiplier path string.. /// @@ -1366,7 +1366,7 @@ internal static string Name_Cannot_BeEmpty { return ResourceManager.GetString("Name_Cannot_BeEmpty", resourceCulture); } } - + /// /// Looks up a localized string similar to The name scalar represents a valid GraphQL name as specified in the spec and can be used to refer to fields or types.. /// @@ -1375,7 +1375,7 @@ internal static string NameType_Description { return ResourceManager.GetString("NameType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The ID field must be a property or a method.. /// @@ -1384,7 +1384,7 @@ internal static string NodeDescriptor_IdField_MustBePropertyOrMethod { return ResourceManager.GetString("NodeDescriptor_IdField_MustBePropertyOrMethod", resourceCulture); } } - + /// /// Looks up a localized string similar to An ID-member must be a property-expression or a method-call-expression.. /// @@ -1393,7 +1393,7 @@ internal static string NodeDescriptor_IdMember { return ResourceManager.GetString("NodeDescriptor_IdMember", resourceCulture); } } - + /// /// Looks up a localized string similar to A node-resolver-expression must be a method-call-expression.. /// @@ -1402,7 +1402,7 @@ internal static string NodeDescriptor_MustBeMethod { return ResourceManager.GetString("NodeDescriptor_MustBeMethod", resourceCulture); } } - + /// /// Looks up a localized string similar to The node interface is implemented by entities that have a global unique identifier.. /// @@ -1411,7 +1411,7 @@ internal static string NodeType_TypeDescription { return ResourceManager.GetString("NodeType_TypeDescription", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type is not an input type.. /// @@ -1420,7 +1420,7 @@ internal static string NonNamedType_IsInstanceOfType_NotAnInputType { return ResourceManager.GetString("NonNamedType_IsInstanceOfType_NotAnInputType", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type is not an input type.. /// @@ -1429,7 +1429,7 @@ internal static string NonNullType_NotAnInputType { return ResourceManager.GetString("NonNullType_NotAnInputType", resourceCulture); } } - + /// /// Looks up a localized string similar to The inner type of non-null type must be a nullable type.. /// @@ -1438,7 +1438,7 @@ internal static string NonNullType_TypeIsNunNullType { return ResourceManager.GetString("NonNullType_TypeIsNunNullType", resourceCulture); } } - + /// /// Looks up a localized string similar to A non null type cannot parse null value literals.. /// @@ -1447,7 +1447,7 @@ internal static string NonNullType_ValueIsNull { return ResourceManager.GetString("NonNullType_ValueIsNull", resourceCulture); } } - + /// /// Looks up a localized string similar to The field-type must be an output-type.. /// @@ -1456,7 +1456,7 @@ internal static string ObjectFieldDescriptorBase_FieldType { return ResourceManager.GetString("ObjectFieldDescriptorBase_FieldType", resourceCulture); } } - + /// /// Looks up a localized string similar to The interface base class cannot be used as interface implementation declaration.. /// @@ -1465,7 +1465,7 @@ internal static string ObjectTypeDescriptor_InterfaceBaseClass { return ResourceManager.GetString("ObjectTypeDescriptor_InterfaceBaseClass", resourceCulture); } } - + /// /// Looks up a localized string similar to A field-expression must be a property-expression or a method-call-expression.. /// @@ -1474,7 +1474,7 @@ internal static string ObjectTypeDescriptor_MustBePropertyOrMethod { return ResourceManager.GetString("ObjectTypeDescriptor_MustBePropertyOrMethod", resourceCulture); } } - + /// /// Looks up a localized string similar to Schema types cannot be used as resolver types.. /// @@ -1483,7 +1483,7 @@ internal static string ObjectTypeDescriptor_Resolver_SchemaType { return ResourceManager.GetString("ObjectTypeDescriptor_Resolver_SchemaType", resourceCulture); } } - + /// /// Looks up a localized string similar to The resolver type {0} cannot be used, a non-abstract type is required.. /// @@ -1492,7 +1492,7 @@ internal static string ObjectTypeDescriptor_ResolveWith_NonAbstract { return ResourceManager.GetString("ObjectTypeDescriptor_ResolveWith_NonAbstract", resourceCulture); } } - + /// /// Looks up a localized string similar to The object type extension can only be merged with an object type.. /// @@ -1501,7 +1501,7 @@ internal static string ObjectTypeExtension_CannotMerge { return ResourceManager.GetString("ObjectTypeExtension_CannotMerge", resourceCulture); } } - + /// /// Looks up a localized string similar to The `@oneOf` directive is used within the type system definition language /// to indicate: @@ -1514,7 +1514,7 @@ internal static string OneOfDirectiveType_Description { return ResourceManager.GetString("OneOfDirectiveType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The member expression must specify a property or method that is public and that belongs to the type {0}. /// @@ -1523,7 +1523,7 @@ internal static string Reflection_MemberMust_BeMethodOrProperty { return ResourceManager.GetString("Reflection_MemberMust_BeMethodOrProperty", resourceCulture); } } - + /// /// Looks up a localized string similar to Member is not a method!. /// @@ -1532,7 +1532,7 @@ internal static string ReflectionUtils_ExtractMethod_MethodExpected { return ResourceManager.GetString("ReflectionUtils_ExtractMethod_MethodExpected", resourceCulture); } } - + /// /// Looks up a localized string similar to The object is not yet ready for this action.. /// @@ -1541,7 +1541,7 @@ internal static string RegisteredType_Completion_NotYetReady { return ResourceManager.GetString("RegisteredType_Completion_NotYetReady", resourceCulture); } } - + /// /// Looks up a localized string similar to The completion context can only be set once.. /// @@ -1550,7 +1550,7 @@ internal static string RegisteredType_CompletionContext_Already_Set { return ResourceManager.GetString("RegisteredType_CompletionContext_Already_Set", resourceCulture); } } - + /// /// Looks up a localized string similar to The completion context has not been initialized.. /// @@ -1559,7 +1559,7 @@ internal static string RegisteredType_CompletionContext_Not_Initialized { return ResourceManager.GetString("RegisteredType_CompletionContext_Not_Initialized", resourceCulture); } } - + /// /// Looks up a localized string similar to Fetches an object given its ID.. /// @@ -1568,7 +1568,7 @@ internal static string Relay_NodeField_Description { return ResourceManager.GetString("Relay_NodeField_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to ID of the object.. /// @@ -1577,7 +1577,7 @@ internal static string Relay_NodeField_Id_Description { return ResourceManager.GetString("Relay_NodeField_Id_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Lookup nodes by a list of IDs.. /// @@ -1586,7 +1586,7 @@ internal static string Relay_NodesField_Description { return ResourceManager.GetString("Relay_NodesField_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The list of node IDs.. /// @@ -1595,7 +1595,7 @@ internal static string Relay_NodesField_Ids_Description { return ResourceManager.GetString("Relay_NodesField_Ids_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to A directive type mustn't be one of the base classes `DirectiveType` or `DirectiveType<T>` but must be a type inheriting from `DirectiveType` or `DirectiveType<T>`.. /// @@ -1604,7 +1604,7 @@ internal static string ResolverCompiler_UnknownParameterType { return ResourceManager.GetString("ResolverCompiler_UnknownParameterType", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified key `{0}` does not exist on `context.ContextData`. /// @@ -1613,7 +1613,7 @@ internal static string ResolverContextExtensions_ContextData_KeyNotFound { return ResourceManager.GetString("ResolverContextExtensions_ContextData_KeyNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified key `{0}` does not exist on `context.LocalContextData`. /// @@ -1622,7 +1622,7 @@ internal static string ResolverContextExtensions_LocalContextData_KeyNotFound { return ResourceManager.GetString("ResolverContextExtensions_LocalContextData_KeyNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified key `{0}` does not exist on `context.ScopedContextData`. /// @@ -1631,7 +1631,7 @@ internal static string ResolverContextExtensions_ScopedContextData_KeyNotFound { return ResourceManager.GetString("ResolverContextExtensions_ScopedContextData_KeyNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified IResolverFieldBindingBuilder-implementation is not supported.. /// @@ -1640,7 +1640,7 @@ internal static string ResolverTypeBindingBuilder_FieldBuilderNotSupported { return ResourceManager.GetString("ResolverTypeBindingBuilder_FieldBuilderNotSupported", resourceCulture); } } - + /// /// Looks up a localized string similar to The field binding builder is not completed and cannot be added.. /// @@ -1649,7 +1649,7 @@ internal static string ResolverTypeBindingBuilder_FieldNotComplete { return ResourceManager.GetString("ResolverTypeBindingBuilder_FieldNotComplete", resourceCulture); } } - + /// /// Looks up a localized string similar to {0} cannot deserialize the given value.. /// @@ -1658,7 +1658,7 @@ internal static string Scalar_Cannot_Deserialize { return ResourceManager.GetString("Scalar_Cannot_Deserialize", resourceCulture); } } - + /// /// Looks up a localized string similar to {0} cannot parse the given literal of type `{1}`.. /// @@ -1667,7 +1667,7 @@ internal static string Scalar_Cannot_ParseLiteral { return ResourceManager.GetString("Scalar_Cannot_ParseLiteral", resourceCulture); } } - + /// /// Looks up a localized string similar to {0} cannot parse the given value of type `{1}`.. /// @@ -1676,7 +1676,7 @@ internal static string Scalar_Cannot_ParseValue { return ResourceManager.GetString("Scalar_Cannot_ParseValue", resourceCulture); } } - + /// /// Looks up a localized string similar to {0} cannot serialize the given value.. /// @@ -1685,7 +1685,7 @@ internal static string Scalar_Cannot_Serialize { return ResourceManager.GetString("Scalar_Cannot_Serialize", resourceCulture); } } - + /// /// Looks up a localized string similar to A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.. /// @@ -1694,7 +1694,7 @@ internal static string Schema_Description { return ResourceManager.GetString("Schema_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to A list of all directives supported by this server.. /// @@ -1703,7 +1703,7 @@ internal static string Schema_Directives { return ResourceManager.GetString("Schema_Directives", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type `{0}` does not exist.. /// @@ -1712,7 +1712,7 @@ internal static string Schema_GetDirectiveType_DoesNotExist { return ResourceManager.GetString("Schema_GetDirectiveType_DoesNotExist", resourceCulture); } } - + /// /// Looks up a localized string similar to If this server supports mutation, the type that mutation operations will be rooted at.. /// @@ -1721,7 +1721,7 @@ internal static string Schema_MutationType { return ResourceManager.GetString("Schema_MutationType", resourceCulture); } } - + /// /// Looks up a localized string similar to The type that query operations will be rooted at.. /// @@ -1730,7 +1730,7 @@ internal static string Schema_QueryType { return ResourceManager.GetString("Schema_QueryType", resourceCulture); } } - + /// /// Looks up a localized string similar to If this server support subscription, the type that subscription operations will be rooted at.. /// @@ -1739,7 +1739,7 @@ internal static string Schema_SubscriptionType { return ResourceManager.GetString("Schema_SubscriptionType", resourceCulture); } } - + /// /// Looks up a localized string similar to A list of all types supported by this server.. /// @@ -1748,7 +1748,7 @@ internal static string Schema_Types { return ResourceManager.GetString("Schema_Types", resourceCulture); } } - + /// /// Looks up a localized string similar to The root type `{0}` has already been registered.. /// @@ -1757,7 +1757,7 @@ internal static string SchemaBuilder_AddRootType_TypeAlreadyRegistered { return ResourceManager.GetString("SchemaBuilder_AddRootType_TypeAlreadyRegistered", resourceCulture); } } - + /// /// Looks up a localized string similar to There is no handler registered that can handle the specified schema binding.. /// @@ -1766,7 +1766,7 @@ internal static string SchemaBuilder_Binding_CannotBeHandled { return ResourceManager.GetString("SchemaBuilder_Binding_CannotBeHandled", resourceCulture); } } - + /// /// Looks up a localized string similar to The schema binding is not valid.. /// @@ -1775,7 +1775,7 @@ internal static string SchemaBuilder_Binding_Invalid { return ResourceManager.GetString("SchemaBuilder_Binding_Invalid", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified convention type is not supported.. /// @@ -1784,7 +1784,7 @@ internal static string SchemaBuilder_Convention_NotSuppported { return ResourceManager.GetString("SchemaBuilder_Convention_NotSuppported", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified interceptor type is not supported.. /// @@ -1793,7 +1793,7 @@ internal static string SchemaBuilder_Interceptor_NotSuppported { return ResourceManager.GetString("SchemaBuilder_Interceptor_NotSuppported", resourceCulture); } } - + /// /// Looks up a localized string similar to The given schema has to inherit from TypeSystemObjectBase in order to be initializable.. /// @@ -1802,7 +1802,7 @@ internal static string SchemaBuilder_ISchemaNotTso { return ResourceManager.GetString("SchemaBuilder_ISchemaNotTso", resourceCulture); } } - + /// /// Looks up a localized string similar to schemaType must be a schema type.. /// @@ -1811,7 +1811,7 @@ internal static string SchemaBuilder_MustBeSchemaType { return ResourceManager.GetString("SchemaBuilder_MustBeSchemaType", resourceCulture); } } - + /// /// Looks up a localized string similar to The schema builder was unable to identify the query type of the schema. Either specify which type is the query type or set the schema builder to non-strict validation mode.. /// @@ -1820,7 +1820,7 @@ internal static string SchemaBuilder_NoQueryType { return ResourceManager.GetString("SchemaBuilder_NoQueryType", resourceCulture); } } - + /// /// Looks up a localized string similar to A root type must be a class.. /// @@ -1829,7 +1829,7 @@ internal static string SchemaBuilder_RootType_MustBeClass { return ResourceManager.GetString("SchemaBuilder_RootType_MustBeClass", resourceCulture); } } - + /// /// Looks up a localized string similar to A root type must be an object type.. /// @@ -1838,7 +1838,7 @@ internal static string SchemaBuilder_RootType_MustBeObjectType { return ResourceManager.GetString("SchemaBuilder_RootType_MustBeObjectType", resourceCulture); } } - + /// /// Looks up a localized string similar to Non-generic schema types are not allowed.. /// @@ -1847,7 +1847,7 @@ internal static string SchemaBuilder_RootType_NonGenericType { return ResourceManager.GetString("SchemaBuilder_RootType_NonGenericType", resourceCulture); } } - + /// /// Looks up a localized string similar to The given schema has to inherit from `Schema` in order to be initializable.. /// @@ -1856,7 +1856,7 @@ internal static string SchemaBuilder_SchemaTypeInvalid { return ResourceManager.GetString("SchemaBuilder_SchemaTypeInvalid", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type `{0}` is a GraphQL schema type. AddEnumType<T> is a helper method to register a runtime type as GraphQL enum type. Use AddType<T> to register GraphQL schema types.. /// @@ -1865,7 +1865,7 @@ internal static string SchemaBuilderExtensions_AddEnumType_TIsSchemaType { return ResourceManager.GetString("SchemaBuilderExtensions_AddEnumType_TIsSchemaType", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type `{0}` is a GraphQL schema type. AddInputObjectType<T> is a helper method to register a runtime type as GraphQL input object type. Use AddType<T> to register GraphQL schema types.. /// @@ -1874,7 +1874,7 @@ internal static string SchemaBuilderExtensions_AddInputObjectType_TIsSchemaType return ResourceManager.GetString("SchemaBuilderExtensions_AddInputObjectType_TIsSchemaType", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type `{0}` is a GraphQL schema type. AddInterfaceType<T> is a helper method to register a runtime type as GraphQL interface type. Use AddType<T> to register GraphQL schema types.. /// @@ -1883,7 +1883,7 @@ internal static string SchemaBuilderExtensions_AddInterfaceType_TIsSchemaType { return ResourceManager.GetString("SchemaBuilderExtensions_AddInterfaceType_TIsSchemaType", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type `{0}` is a GraphQL schema type. AddObjectType<T> is a helper method to register a runtime type as GraphQL object type. Use AddType<T> to register GraphQL schema types.. /// @@ -1892,7 +1892,7 @@ internal static string SchemaBuilderExtensions_AddObjectType_TIsSchemaType { return ResourceManager.GetString("SchemaBuilderExtensions_AddObjectType_TIsSchemaType", resourceCulture); } } - + /// /// Looks up a localized string similar to Empty field coordinates are not allowed.. /// @@ -1901,7 +1901,7 @@ internal static string SchemaBuilderExtensions_AddResolver_EmptyCooridnates { return ResourceManager.GetString("SchemaBuilderExtensions_AddResolver_EmptyCooridnates", resourceCulture); } } - + /// /// Looks up a localized string similar to The resolver type needs to be a public non-abstract non-static class.. /// @@ -1910,7 +1910,7 @@ internal static string SchemaBuilderExtensions_AddResolver_TypeConditionNotMet { return ResourceManager.GetString("SchemaBuilderExtensions_AddResolver_TypeConditionNotMet", resourceCulture); } } - + /// /// Looks up a localized string similar to The schema builder context is invalid.. /// @@ -1919,7 +1919,7 @@ internal static string SchemaBuilderExtensions_AddResolverConfig_ContextInvalid return ResourceManager.GetString("SchemaBuilderExtensions_AddResolverConfig_ContextInvalid", resourceCulture); } } - + /// /// Looks up a localized string similar to The resolver type needs to be a class or interface. /// @@ -1928,7 +1928,7 @@ internal static string SchemaBuilderExtensions_AddRootResolver_NeedsToBeClassOrI return ResourceManager.GetString("SchemaBuilderExtensions_AddRootResolver_NeedsToBeClassOrInterface", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type `{0}` is a GraphQL schema type. AddUnionType<T> is a helper method to register a runtime type as GraphQL union type. Use AddType<T> to register GraphQL schema types.. /// @@ -1937,7 +1937,7 @@ internal static string SchemaBuilderExtensions_AddUnionType_TIsSchemaType { return ResourceManager.GetString("SchemaBuilderExtensions_AddUnionType_TIsSchemaType", resourceCulture); } } - + /// /// Looks up a localized string similar to A directive type mustn't be one of the base classes `DirectiveType` or `DirectiveType<T>` but must be a type inheriting from `DirectiveType` or `DirectiveType<T>`.. /// @@ -1946,7 +1946,7 @@ internal static string SchemaBuilderExtensions_DirectiveTypeIsBaseType { return ResourceManager.GetString("SchemaBuilderExtensions_DirectiveTypeIsBaseType", resourceCulture); } } - + /// /// Looks up a localized string similar to A directive type must inherit from `DirectiveType` or `DirectiveType<T>`.. /// @@ -1955,7 +1955,7 @@ internal static string SchemaBuilderExtensions_MustBeDirectiveType { return ResourceManager.GetString("SchemaBuilderExtensions_MustBeDirectiveType", resourceCulture); } } - + /// /// Looks up a localized string similar to The schema string cannot be null or empty.. /// @@ -1964,7 +1964,7 @@ internal static string SchemaBuilderExtensions_SchemaIsEmpty { return ResourceManager.GetString("SchemaBuilderExtensions_SchemaIsEmpty", resourceCulture); } } - + /// /// Looks up a localized string similar to The error message mustn't be null or empty.. /// @@ -1973,7 +1973,7 @@ internal static string SchemaErrorBuilder_MessageIsNull { return ResourceManager.GetString("SchemaErrorBuilder_MessageIsNull", resourceCulture); } } - + /// /// Looks up a localized string similar to Access the current type schema of this server.. /// @@ -1982,7 +1982,7 @@ internal static string SchemaField_Description { return ResourceManager.GetString("SchemaField_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Unknown operation type.. /// @@ -1991,7 +1991,7 @@ internal static string SchemaSyntaxVisitor_UnknownOperationType { return ResourceManager.GetString("SchemaSyntaxVisitor_UnknownOperationType", resourceCulture); } } - + /// /// Looks up a localized string similar to The schema types definition is in an invalid state.. /// @@ -2000,7 +2000,7 @@ internal static string SchemaTypes_DefinitionInvalid { return ResourceManager.GetString("SchemaTypes_DefinitionInvalid", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type `{0}` does not exist or is not of the specified kind `{1}`.. /// @@ -2009,7 +2009,7 @@ internal static string SchemaTypes_GetType_DoesNotExist { return ResourceManager.GetString("SchemaTypes_GetType_DoesNotExist", resourceCulture); } } - + /// /// Looks up a localized string similar to The middleware order is invalid since the service scope is missing.. /// @@ -2018,7 +2018,7 @@ internal static string ServiceHelper_UseResolverServiceInternal_Order { return ResourceManager.GetString("ServiceHelper_UseResolverServiceInternal_Order", resourceCulture); } } - + /// /// Looks up a localized string similar to The `Short` scalar type represents non-fractional signed whole 16-bit numeric values. Short can represent values between -(2^15) and 2^15 - 1.. /// @@ -2027,7 +2027,7 @@ internal static string ShortType_Description { return ResourceManager.GetString("ShortType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Skipped when true.. /// @@ -2036,7 +2036,7 @@ internal static string SkipDirectiveType_IfDescription { return ResourceManager.GetString("SkipDirectiveType_IfDescription", resourceCulture); } } - + /// /// Looks up a localized string similar to Directs the executor to skip this field or fragment when the `if` argument is true.. /// @@ -2045,7 +2045,7 @@ internal static string SkipDirectiveType_TypeDescription { return ResourceManager.GetString("SkipDirectiveType_TypeDescription", resourceCulture); } } - + /// /// Looks up a localized string similar to The `@specifiedBy` directive is used within the type system definition language to provide a URL for specifying the behavior of custom scalar definitions.. /// @@ -2054,7 +2054,7 @@ internal static string SpecifiedByDirectiveType_TypeDescription { return ResourceManager.GetString("SpecifiedByDirectiveType_TypeDescription", resourceCulture); } } - + /// /// Looks up a localized string similar to The specifiedBy URL points to a human-readable specification. This field will only read a result for scalar types.. /// @@ -2063,7 +2063,7 @@ internal static string SpecifiedByDirectiveType_UrlDescription { return ResourceManager.GetString("SpecifiedByDirectiveType_UrlDescription", resourceCulture); } } - + /// /// Looks up a localized string similar to The `@stream` directive may be provided for a field of `List` type so that the backend can leverage technology such as asynchronous iterators to provide a partial list in the initial response, and additional list items in subsequent responses. `@include` and `@skip` take precedence over `@stream`.. /// @@ -2072,7 +2072,7 @@ internal static string StreamDirectiveType_Description { return ResourceManager.GetString("StreamDirectiveType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Streamed when true.. /// @@ -2081,7 +2081,7 @@ internal static string StreamDirectiveType_If_Description { return ResourceManager.GetString("StreamDirectiveType_If_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The initial elements that shall be send down to the consumer.. /// @@ -2090,7 +2090,7 @@ internal static string StreamDirectiveType_InitialCount_Description { return ResourceManager.GetString("StreamDirectiveType_InitialCount_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to If this argument label has a value other than null, it will be passed on to the result of this stream directive. This label is intended to give client applications a way to identify to which fragment a streamed result belongs to.. /// @@ -2099,7 +2099,7 @@ internal static string StreamDirectiveType_Label_Description { return ResourceManager.GetString("StreamDirectiveType_Label_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The `{0}` cannot be null or empty.. /// @@ -2108,7 +2108,7 @@ internal static string String_Argument_NullOrEmpty { return ResourceManager.GetString("String_Argument_NullOrEmpty", resourceCulture); } } - + /// /// Looks up a localized string similar to The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.. /// @@ -2117,7 +2117,7 @@ internal static string StringType_Description { return ResourceManager.GetString("StringType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Tag is not supported on the specified descriptor.. /// @@ -2126,7 +2126,7 @@ internal static string TagDirective_Descriptor_NotSupported { return ResourceManager.GetString("TagDirective_Descriptor_NotSupported", resourceCulture); } } - + /// /// Looks up a localized string similar to The tag name must follow the GraphQL type name rules.. /// @@ -2135,7 +2135,7 @@ internal static string TagDirective_Name_NotValid { return ResourceManager.GetString("TagDirective_Name_NotValid", resourceCulture); } } - + /// /// Looks up a localized string similar to Convention of type {0} in scope {1} could not be created. /// @@ -2144,7 +2144,7 @@ internal static string ThrowHelper_Convention_ConventionCouldNotBeCreated { return ResourceManager.GetString("ThrowHelper_Convention_ConventionCouldNotBeCreated", resourceCulture); } } - + /// /// Looks up a localized string similar to There are two conventions registered for {0} in scope {1}. Only one convention is allowed. Use convention extensions if additional configuration is needed. Colliding conventions are {2} and {3}. /// @@ -2153,7 +2153,7 @@ internal static string ThrowHelper_Convention_TwoConventionsRegisteredForScope { return ResourceManager.GetString("ThrowHelper_Convention_TwoConventionsRegisteredForScope", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to create a convention instance from {0}.. /// @@ -2162,7 +2162,7 @@ internal static string ThrowHelper_Convention_UnableToCreateConvention { return ResourceManager.GetString("ThrowHelper_Convention_UnableToCreateConvention", resourceCulture); } } - + /// /// Looks up a localized string similar to The provided type {0} is not a dataloader. /// @@ -2171,7 +2171,7 @@ internal static string ThrowHelper_DataLoader_InvalidType { return ResourceManager.GetString("ThrowHelper_DataLoader_InvalidType", resourceCulture); } } - + /// /// Looks up a localized string similar to The event message is of the type `{0}` and cannot be casted to `{1}.`. /// @@ -2180,7 +2180,7 @@ internal static string ThrowHelper_EventMessage_InvalidCast { return ResourceManager.GetString("ThrowHelper_EventMessage_InvalidCast", resourceCulture); } } - + /// /// Looks up a localized string similar to There is no event message on the context.. /// @@ -2189,7 +2189,7 @@ internal static string ThrowHelper_EventMessage_NotFound { return ResourceManager.GetString("ThrowHelper_EventMessage_NotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to The field is already sealed and cannot be mutated.. /// @@ -2198,7 +2198,7 @@ internal static string ThrowHelper_FieldBase_Sealed { return ResourceManager.GetString("ThrowHelper_FieldBase_Sealed", resourceCulture); } } - + /// /// Looks up a localized string similar to The shape of the enum {0} is not known. /// @@ -2207,7 +2207,7 @@ internal static string ThrowHelper_Flags_Enum_Shape_Unknown { return ResourceManager.GetString("ThrowHelper_Flags_Enum_Shape_Unknown", resourceCulture); } } - + /// /// Looks up a localized string similar to One of the values of {0} does not have a valid name: {1}. /// @@ -2216,7 +2216,7 @@ internal static string ThrowHelper_Flags_IllegalFlagEnumName { return ResourceManager.GetString("ThrowHelper_Flags_IllegalFlagEnumName", resourceCulture); } } - + /// /// Looks up a localized string similar to Flags need to have at least one selection. Type: {0}. /// @@ -2225,7 +2225,7 @@ internal static string ThrowHelper_Flags_Parser_NoSelection { return ResourceManager.GetString("ThrowHelper_Flags_Parser_NoSelection", resourceCulture); } } - + /// /// Looks up a localized string similar to The value {0} is not known for type {1}. /// @@ -2234,7 +2234,7 @@ internal static string ThrowHelper_Flags_Parser_UnknownSelection { return ResourceManager.GetString("ThrowHelper_Flags_Parser_UnknownSelection", resourceCulture); } } - + /// /// Looks up a localized string similar to The type `{0}` does mot expect `{1}`.. /// @@ -2243,7 +2243,7 @@ internal static string ThrowHelper_FormatResultLeaf_InvalidSyntaxKind { return ResourceManager.GetString("ThrowHelper_FormatResultLeaf_InvalidSyntaxKind", resourceCulture); } } - + /// /// Looks up a localized string similar to The list result value of {0} must implement IList but is of the type {1}.. /// @@ -2252,7 +2252,7 @@ internal static string ThrowHelper_FormatResultList_InvalidObjectKind { return ResourceManager.GetString("ThrowHelper_FormatResultList_InvalidObjectKind", resourceCulture); } } - + /// /// Looks up a localized string similar to The input object `{1}` must to be of type `{2}` or serialized as `IReadOnlyDictionary<string. object?>` but not as `{0}`.. /// @@ -2261,7 +2261,7 @@ internal static string ThrowHelper_FormatResultObject_InvalidObjectKind { return ResourceManager.GetString("ThrowHelper_FormatResultObject_InvalidObjectKind", resourceCulture); } } - + /// /// Looks up a localized string similar to The list runtime value of {0} must implement IEnumerable or IList but is of the type {1}.. /// @@ -2270,7 +2270,7 @@ internal static string ThrowHelper_FormatValueList_InvalidObjectKind { return ResourceManager.GetString("ThrowHelper_FormatValueList_InvalidObjectKind", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type `{0}` is expected to be an input type.. /// @@ -2279,7 +2279,7 @@ internal static string ThrowHelper_InputTypeExpected_Message { return ResourceManager.GetString("ThrowHelper_InputTypeExpected_Message", resourceCulture); } } - + /// /// Looks up a localized string similar to The fields `{0}` do not exist on the type `{1}`.. /// @@ -2288,7 +2288,7 @@ internal static string ThrowHelper_InvalidInputFieldNames { return ResourceManager.GetString("ThrowHelper_InvalidInputFieldNames", resourceCulture); } } - + /// /// Looks up a localized string similar to The field `{0}` does not exist on the type `{1}`.. /// @@ -2297,7 +2297,7 @@ internal static string ThrowHelper_InvalidInputFieldNames_Single { return ResourceManager.GetString("ThrowHelper_InvalidInputFieldNames_Single", resourceCulture); } } - + /// /// Looks up a localized string similar to The {0}-directive is missing the if-argument.. /// @@ -2306,7 +2306,7 @@ internal static string ThrowHelper_MissingDirectiveIfArgument { return ResourceManager.GetString("ThrowHelper_MissingDirectiveIfArgument", resourceCulture); } } - + /// /// Looks up a localized string similar to Mutation conventions infer the error name from the mutation. In this case the error union was inferred from the mutation `{0}` as `{1}`, but the type initialization encountered another object with the name `{1}`. Either rename the error object or specify a naming exception for this particular mutation. You can do that by using the `UseMutationConventionAttribute` for instance.. /// @@ -2315,7 +2315,7 @@ internal static string ThrowHelper_MutationDuplicateErrorName { return ResourceManager.GetString("ThrowHelper_MutationDuplicateErrorName", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified id field `{0}` does not exist on `{1}`.. /// @@ -2324,7 +2324,7 @@ internal static string ThrowHelper_NodeAttribute_IdFieldNotFound { return ResourceManager.GetString("ThrowHelper_NodeAttribute_IdFieldNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to A field argument at this initialization state is guaranteed to have an argument type, but we found none.. /// @@ -2333,7 +2333,7 @@ internal static string ThrowHelper_NodeResolver_ArgumentTypeMissing { return ResourceManager.GetString("ThrowHelper_NodeResolver_ArgumentTypeMissing", resourceCulture); } } - + /// /// Looks up a localized string similar to An object type at this point is guaranteed to have a type definition, but we found none.. /// @@ -2342,7 +2342,7 @@ internal static string ThrowHelper_NodeResolver_ObjNoDefinition { return ResourceManager.GetString("ThrowHelper_NodeResolver_ObjNoDefinition", resourceCulture); } } - + /// /// Looks up a localized string similar to Cannot accept null for non-nullable input.. /// @@ -2351,7 +2351,7 @@ internal static string ThrowHelper_NonNullInputViolation { return ResourceManager.GetString("ThrowHelper_NonNullInputViolation", resourceCulture); } } - + /// /// Looks up a localized string similar to `null` was set to the field `{0}`of the Oneof Input Object `{1}`. Oneof Input Objects are a special variant of Input Objects where the type system asserts that exactly one of the fields must be set and non-null.. /// @@ -2360,7 +2360,7 @@ internal static string ThrowHelper_OneOfFieldIsNull { return ResourceManager.GetString("ThrowHelper_OneOfFieldIsNull", resourceCulture); } } - + /// /// Looks up a localized string similar to More than one field of the Oneof Input Object `{0}` is set. Oneof Input Objects are a special variant of Input Objects where the type system asserts that exactly one of the fields must be set and non-null.. /// @@ -2369,7 +2369,7 @@ internal static string ThrowHelper_OneOfMoreThanOneFieldSet { return ResourceManager.GetString("ThrowHelper_OneOfMoreThanOneFieldSet", resourceCulture); } } - + /// /// Looks up a localized string similar to The Oneof Input Objects `{0}` require that exactly one field must be supplied and that field must not be `null`. Oneof Input Objects are a special variant of Input Objects where the type system asserts that exactly one of the fields must be set and non-null.. /// @@ -2378,7 +2378,7 @@ internal static string ThrowHelper_OneOfNoFieldSet { return ResourceManager.GetString("ThrowHelper_OneOfNoFieldSet", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type `{0}` is expected to be an output type.. /// @@ -2387,7 +2387,7 @@ internal static string ThrowHelper_OutputTypeExpected_Message { return ResourceManager.GetString("ThrowHelper_OutputTypeExpected_Message", resourceCulture); } } - + /// /// Looks up a localized string similar to The input object `{1}` must to be serialized as `{2}` or as `IReadOnlyDictionary<string. object?>` but not as `{0}`.. /// @@ -2396,7 +2396,7 @@ internal static string ThrowHelper_ParseInputObject_InvalidObjectKind { return ResourceManager.GetString("ThrowHelper_ParseInputObject_InvalidObjectKind", resourceCulture); } } - + /// /// Looks up a localized string similar to The syntax node `{0}` is incompatible with the type `{1}`.. /// @@ -2405,7 +2405,7 @@ internal static string ThrowHelper_ParseInputObject_InvalidSyntaxKind { return ResourceManager.GetString("ThrowHelper_ParseInputObject_InvalidSyntaxKind", resourceCulture); } } - + /// /// Looks up a localized string similar to The list `{1}` must to be serialized as `{2}` or as `IList` but not as `{0}`.. /// @@ -2414,7 +2414,7 @@ internal static string ThrowHelper_ParseList_InvalidObjectKind { return ResourceManager.GetString("ThrowHelper_ParseList_InvalidObjectKind", resourceCulture); } } - + /// /// Looks up a localized string similar to The item syntax node for a nested list must be `ListValue` but the parser found `{0}`.. /// @@ -2423,7 +2423,7 @@ internal static string ThrowHelper_ParseNestedList_InvalidSyntaxKind { return ResourceManager.GetString("ThrowHelper_ParseNestedList_InvalidSyntaxKind", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to resolve type from field `{0}`.. /// @@ -2432,7 +2432,7 @@ internal static string ThrowHelper_RelayIdFieldHelpers_NoFieldType { return ResourceManager.GetString("ThrowHelper_RelayIdFieldHelpers_NoFieldType", resourceCulture); } } - + /// /// Looks up a localized string similar to The required input field `{0}` is missing.. /// @@ -2441,7 +2441,7 @@ internal static string ThrowHelper_RequiredInputFieldIsMissing { return ResourceManager.GetString("ThrowHelper_RequiredInputFieldIsMissing", resourceCulture); } } - + /// /// Looks up a localized string similar to Argument `{0}` was not found on directive `@{1}`.. /// @@ -2450,7 +2450,7 @@ internal static string ThrowHelper_Schema_GetMember_DirectiveArgumentNotFound { return ResourceManager.GetString("ThrowHelper_Schema_GetMember_DirectiveArgumentNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to Directive `@{0}` not found.. /// @@ -2459,7 +2459,7 @@ internal static string ThrowHelper_Schema_GetMember_DirectiveNotFound { return ResourceManager.GetString("ThrowHelper_Schema_GetMember_DirectiveNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to Enum value `{0}` was not found on type `{1}`.. /// @@ -2468,7 +2468,7 @@ internal static string ThrowHelper_Schema_GetMember_EnumValueNotFound { return ResourceManager.GetString("ThrowHelper_Schema_GetMember_EnumValueNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to Argument `{0}` was not found on field `{1}.{2}`.. /// @@ -2477,7 +2477,7 @@ internal static string ThrowHelper_Schema_GetMember_FieldArgNotFound { return ResourceManager.GetString("ThrowHelper_Schema_GetMember_FieldArgNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to Field `{0}` was not found on type `{1}`.. /// @@ -2486,7 +2486,7 @@ internal static string ThrowHelper_Schema_GetMember_FieldNotFound { return ResourceManager.GetString("ThrowHelper_Schema_GetMember_FieldNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to Input field `{0}` was not found on type `{1}`.. /// @@ -2495,7 +2495,7 @@ internal static string ThrowHelper_Schema_GetMember_InputFieldNotFound { return ResourceManager.GetString("ThrowHelper_Schema_GetMember_InputFieldNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to The coordinate `{0}` is invalid for the type `{1}`.. /// @@ -2504,7 +2504,7 @@ internal static string ThrowHelper_Schema_GetMember_InvalidCoordinate { return ResourceManager.GetString("ThrowHelper_Schema_GetMember_InvalidCoordinate", resourceCulture); } } - + /// /// Looks up a localized string similar to A type with the name `{0}` was not found.. /// @@ -2513,7 +2513,7 @@ internal static string ThrowHelper_Schema_GetMember_TypeNotFound { return ResourceManager.GetString("ThrowHelper_Schema_GetMember_TypeNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to You need to specify the message type on {0}.{1}. (SubscribeAttribute). /// @@ -2522,7 +2522,7 @@ internal static string ThrowHelper_SubscribeAttribute_MessageTypeUnspecified { return ResourceManager.GetString("ThrowHelper_SubscribeAttribute_MessageTypeUnspecified", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to find the subscribe resolver `{2}` defined on {0}.{1}. The subscribe resolver bust be a method that is public, non-static and on the same type as the resolver. (SubscribeAttribute). /// @@ -2531,7 +2531,7 @@ internal static string ThrowHelper_SubscribeAttribute_SubscribeResolverNotFound return ResourceManager.GetString("ThrowHelper_SubscribeAttribute_SubscribeResolverNotFound", resourceCulture); } } - + /// /// Looks up a localized string similar to You need to specify the topic type on {0}.{1}. (SubscribeAttribute). /// @@ -2540,7 +2540,7 @@ internal static string ThrowHelper_SubscribeAttribute_TopicTypeUnspecified { return ResourceManager.GetString("ThrowHelper_SubscribeAttribute_TopicTypeUnspecified", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to resolve type reference `{0}`.. /// @@ -2549,7 +2549,7 @@ internal static string ThrowHelper_TypeCompletionContext_UnableToResolveType { return ResourceManager.GetString("ThrowHelper_TypeCompletionContext_UnableToResolveType", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to create instance of type `{0}`.. /// @@ -2558,7 +2558,7 @@ internal static string ThrowHelper_TypeRegistrar_CreateInstanceFailed { return ResourceManager.GetString("ThrowHelper_TypeRegistrar_CreateInstanceFailed", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to infer the element type from the current resolver. This often happens if the resolver is not an iterable type like IEnumerable, IQueryable, IList etc. Ensure that you either explicitly specify the element type or that the return type of your resolver is an iterable type.. /// @@ -2567,7 +2567,7 @@ internal static string ThrowHelper_UsePagingAttribute_NodeTypeUnknown { return ResourceManager.GetString("ThrowHelper_UsePagingAttribute_NodeTypeUnknown", resourceCulture); } } - + /// /// Looks up a localized string similar to The `TimeSpan` scalar represents an ISO-8601 compliant duration type.. /// @@ -2576,7 +2576,7 @@ internal static string TimeSpanType_Description { return ResourceManager.GetString("TimeSpanType_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum. /// @@ -2587,7 +2587,7 @@ internal static string Type_Description { return ResourceManager.GetString("Type_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to `specifiedByURL` may return a String (in the form of a URL) for custom scalars, otherwise it will return `null`.. /// @@ -2596,7 +2596,7 @@ internal static string Type_SpecifiedByUrl_Description { return ResourceManager.GetString("Type_SpecifiedByUrl_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to The configuration delegate mustn't be null.. /// @@ -2605,7 +2605,7 @@ internal static string TypeConfiguration_ConfigureIsNull { return ResourceManager.GetString("TypeConfiguration_ConfigureIsNull", resourceCulture); } } - + /// /// Looks up a localized string similar to Definition mustn't be null.. /// @@ -2614,7 +2614,7 @@ internal static string TypeConfiguration_DefinitionIsNull { return ResourceManager.GetString("TypeConfiguration_DefinitionIsNull", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to convert type from `{0}` to `{1}`. /// @@ -2623,7 +2623,7 @@ internal static string TypeConvertion_ConvertNotSupported { return ResourceManager.GetString("TypeConvertion_ConvertNotSupported", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type is not a schema type.. /// @@ -2632,7 +2632,7 @@ internal static string TypeDependency_MustBeSchemaType { return ResourceManager.GetString("TypeDependency_MustBeSchemaType", resourceCulture); } } - + /// /// Looks up a localized string similar to TypeReference kind not supported.. /// @@ -2641,7 +2641,7 @@ internal static string TypeDiscoveryInfo_TypeRefKindNotSupported { return ResourceManager.GetString("TypeDiscoveryInfo_TypeRefKindNotSupported", resourceCulture); } } - + /// /// Looks up a localized string similar to The type structure is invalid.. /// @@ -2650,7 +2650,7 @@ internal static string TypeExtensions_InvalidStructure { return ResourceManager.GetString("TypeExtensions_InvalidStructure", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type kind is not supported.. /// @@ -2659,7 +2659,7 @@ internal static string TypeExtensions_KindIsNotSupported { return ResourceManager.GetString("TypeExtensions_KindIsNotSupported", resourceCulture); } } - + /// /// Looks up a localized string similar to The specified type is not a valid list type.. /// @@ -2668,7 +2668,7 @@ internal static string TypeExtensions_NoListType { return ResourceManager.GetString("TypeExtensions_NoListType", resourceCulture); } } - + /// /// Looks up a localized string similar to The given type is not a {0}.. /// @@ -2677,7 +2677,7 @@ internal static string TypeExtensions_TypeIsNotOfT { return ResourceManager.GetString("TypeExtensions_TypeIsNotOfT", resourceCulture); } } - + /// /// Looks up a localized string similar to Request the type information of a single type.. /// @@ -2686,7 +2686,7 @@ internal static string TypeField_Description { return ResourceManager.GetString("TypeField_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to find type(s) {0}. /// @@ -2695,7 +2695,7 @@ internal static string TypeInitializer_CannotFindType { return ResourceManager.GetString("TypeInitializer_CannotFindType", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to resolve dependencies {1} for type `{0}`.. /// @@ -2704,7 +2704,7 @@ internal static string TypeInitializer_CannotResolveDependency { return ResourceManager.GetString("TypeInitializer_CannotResolveDependency", resourceCulture); } } - + /// /// Looks up a localized string similar to The name `{0}` was already registered by another type.. /// @@ -2713,7 +2713,7 @@ internal static string TypeInitializer_CompleteName_Duplicate { return ResourceManager.GetString("TypeInitializer_CompleteName_Duplicate", resourceCulture); } } - + /// /// Looks up a localized string similar to The kind of the extension does not match the kind of the type `{0}`.. /// @@ -2722,7 +2722,7 @@ internal static string TypeInitializer_Merge_KindDoesNotMatch { return ResourceManager.GetString("TypeInitializer_Merge_KindDoesNotMatch", resourceCulture); } } - + /// /// Looks up a localized string similar to An enum describing what kind of type a given `__Type` is.. /// @@ -2731,7 +2731,7 @@ internal static string TypeKind_Description { return ResourceManager.GetString("TypeKind_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Indicates this type is an enum. `enumValues` is a valid field.. /// @@ -2740,7 +2740,7 @@ internal static string TypeKind_Enum { return ResourceManager.GetString("TypeKind_Enum", resourceCulture); } } - + /// /// Looks up a localized string similar to Indicates this type is an input object. `inputFields` is a valid field.. /// @@ -2749,7 +2749,7 @@ internal static string TypeKind_InputObject { return ResourceManager.GetString("TypeKind_InputObject", resourceCulture); } } - + /// /// Looks up a localized string similar to Indicates this type is an interface. `fields` and `possibleTypes` are valid fields.. /// @@ -2758,7 +2758,7 @@ internal static string TypeKind_Interface { return ResourceManager.GetString("TypeKind_Interface", resourceCulture); } } - + /// /// Looks up a localized string similar to Indicates this type is a list. `ofType` is a valid field.. /// @@ -2767,7 +2767,7 @@ internal static string TypeKind_List { return ResourceManager.GetString("TypeKind_List", resourceCulture); } } - + /// /// Looks up a localized string similar to Indicates this type is a non-null. `ofType` is a valid field.. /// @@ -2776,7 +2776,7 @@ internal static string TypeKind_NonNull { return ResourceManager.GetString("TypeKind_NonNull", resourceCulture); } } - + /// /// Looks up a localized string similar to Indicates this type is an object. `fields` and `interfaces` are valid fields.. /// @@ -2785,7 +2785,7 @@ internal static string TypeKind_Object { return ResourceManager.GetString("TypeKind_Object", resourceCulture); } } - + /// /// Looks up a localized string similar to Indicates this type is a scalar.. /// @@ -2794,7 +2794,7 @@ internal static string TypeKind_Scalar { return ResourceManager.GetString("TypeKind_Scalar", resourceCulture); } } - + /// /// Looks up a localized string similar to Indicates this type is a union. `possibleTypes` is a valid field.. /// @@ -2803,7 +2803,7 @@ internal static string TypeKind_Union { return ResourceManager.GetString("TypeKind_Union", resourceCulture); } } - + /// /// Looks up a localized string similar to The name of the current Object type at runtime.. /// @@ -2812,7 +2812,7 @@ internal static string TypeNameField_Description { return ResourceManager.GetString("TypeNameField_Description", resourceCulture); } } - + /// /// Looks up a localized string similar to Invalid type structure.. /// @@ -2821,7 +2821,7 @@ internal static string TypeNameHelper_InvalidTypeStructure { return ResourceManager.GetString("TypeNameHelper_InvalidTypeStructure", resourceCulture); } } - + /// /// Looks up a localized string similar to Only type system objects are allowed as dependency.. /// @@ -2830,7 +2830,7 @@ internal static string TypeNameHelper_OnlyTsosAreAllowed { return ResourceManager.GetString("TypeNameHelper_OnlyTsosAreAllowed", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to infer or resolve a schema type from the type reference `{0}`.. /// @@ -2839,7 +2839,7 @@ internal static string TypeRegistrar_TypesInconsistent { return ResourceManager.GetString("TypeRegistrar_TypesInconsistent", resourceCulture); } } - + /// /// Looks up a localized string similar to The typeName mustn't be null or empty.. /// @@ -2848,7 +2848,7 @@ internal static string TypeResourceHelper_TypeNameEmptyOrNull { return ResourceManager.GetString("TypeResourceHelper_TypeNameEmptyOrNull", resourceCulture); } } - + /// /// Looks up a localized string similar to The description becomes immutable once it was assigned.. /// @@ -2857,7 +2857,7 @@ internal static string TypeSystemObject_DescriptionImmutable { return ResourceManager.GetString("TypeSystemObject_DescriptionImmutable", resourceCulture); } } - + /// /// Looks up a localized string similar to The name becomes immutable once it was assigned.. /// @@ -2866,7 +2866,7 @@ internal static string TypeSystemObject_NameImmutable { return ResourceManager.GetString("TypeSystemObject_NameImmutable", resourceCulture); } } - + /// /// Looks up a localized string similar to The type definition is null which means that the type was initialized incorrectly.. /// @@ -2875,7 +2875,7 @@ internal static string TypeSystemObjectBase_DefinitionIsNull { return ResourceManager.GetString("TypeSystemObjectBase_DefinitionIsNull", resourceCulture); } } - + /// /// Looks up a localized string similar to The type name was not completed correctly and is still empty. Type names are not allowed to remain empty after name completion was executed. ///Type: `{0}`. @@ -2885,7 +2885,7 @@ internal static string TypeSystemObjectBase_NameIsNull { return ResourceManager.GetString("TypeSystemObjectBase_NameIsNull", resourceCulture); } } - + /// /// Looks up a localized string similar to A Union type must define one or more unique member types.. /// @@ -2894,7 +2894,7 @@ internal static string UnionType_MustHaveTypes { return ResourceManager.GetString("UnionType_MustHaveTypes", resourceCulture); } } - + /// /// Looks up a localized string similar to Unable to resolve the specified type reference.. /// @@ -2903,7 +2903,7 @@ internal static string UnionType_UnableToResolveType { return ResourceManager.GetString("UnionType_UnableToResolveType", resourceCulture); } } - + /// /// Looks up a localized string similar to The union type extension can only be merged with an union type.. /// @@ -2912,7 +2912,7 @@ internal static string UnionTypeExtension_CannotMerge { return ResourceManager.GetString("UnionTypeExtension_CannotMerge", resourceCulture); } } - + /// /// Looks up a localized string similar to Unknown format. Guid supports the following format chars: {{ `N`, `D`, `B`, `P` }}. /// https://docs.microsoft.com/en-us/dotnet/api/system.buffers.text.utf8parser.tryparse?view=netcore-3.1#System_Buffers_Text_Utf8Parser_TryParse_System_ReadOnlySpan_System_Byte__System_Guid__System_Int32__System_Char. @@ -2922,7 +2922,7 @@ internal static string UuidType_FormatUnknown { return ResourceManager.GetString("UuidType_FormatUnknown", resourceCulture); } } - + /// /// Looks up a localized string similar to Variable `{0}` of type `{1}` must be an input type.. /// @@ -2931,7 +2931,7 @@ internal static string VariableValueBuilder_InputType { return ResourceManager.GetString("VariableValueBuilder_InputType", resourceCulture); } } - + /// /// Looks up a localized string similar to Variable `{0}` got invalid value.. /// @@ -2940,7 +2940,7 @@ internal static string VariableValueBuilder_InvalidValue { return ResourceManager.GetString("VariableValueBuilder_InvalidValue", resourceCulture); } } - + /// /// Looks up a localized string similar to The type node kind is not supported.. /// @@ -2949,7 +2949,7 @@ internal static string VariableValueBuilder_NodeKind { return ResourceManager.GetString("VariableValueBuilder_NodeKind", resourceCulture); } } - + /// /// Looks up a localized string similar to Variable `{0}` of type `{1}` must not be null.. /// @@ -2958,7 +2958,7 @@ internal static string VariableValueBuilder_NonNull { return ResourceManager.GetString("VariableValueBuilder_NonNull", resourceCulture); } } - + /// /// Looks up a localized string similar to Detected non-null violation in variable `{0}`.. /// @@ -2967,7 +2967,7 @@ internal static string VariableValueBuilder_NonNull_In_Graph { return ResourceManager.GetString("VariableValueBuilder_NonNull_In_Graph", resourceCulture); } } - + /// /// Looks up a localized string similar to Variable name mustn't be null or empty.. /// @@ -2976,5 +2976,17 @@ internal static string VariableValueBuilder_VarNameEmpty { return ResourceManager.GetString("VariableValueBuilder_VarNameEmpty", resourceCulture); } } + + internal static string ErrorHelper_DuplicateFieldName_Message { + get { + return ResourceManager.GetString("ErrorHelper_DuplicateFieldName_Message", resourceCulture); + } + } + + internal static string ErrorHelper_DuplicateDataMiddlewareDetected_Message { + get { + return ResourceManager.GetString("ErrorHelper_DuplicateDataMiddlewareDetected_Message", resourceCulture); + } + } } } diff --git a/src/HotChocolate/Core/src/Types/Properties/TypeResources.resx b/src/HotChocolate/Core/src/Types/Properties/TypeResources.resx index 30ede0824af..d4d5e05503f 100644 --- a/src/HotChocolate/Core/src/Types/Properties/TypeResources.resx +++ b/src/HotChocolate/Core/src/Types/Properties/TypeResources.resx @@ -1,17 +1,17 @@ - @@ -1096,4 +1096,10 @@ Type: `{0}` Adding an error type `{0}` to field `{1}` failed as mutation conventions weren't enabled. - \ No newline at end of file + + The following {0}{1} `{2}` {3} declared multiple times on `{4}`. + + + The field `{0}` declares the data middleware `{1}` more than once. + + diff --git a/src/HotChocolate/Core/src/Types/Types/FieldCollection.cs b/src/HotChocolate/Core/src/Types/Types/FieldCollection.cs index c3d6ffc2b41..a959a461ccd 100644 --- a/src/HotChocolate/Core/src/Types/Types/FieldCollection.cs +++ b/src/HotChocolate/Core/src/Types/Types/FieldCollection.cs @@ -24,6 +24,12 @@ internal FieldCollection(T[] fields) } } + private FieldCollection(Dictionary fieldsLookup, T[] fields) + { + _fieldsLookup = fieldsLookup; + _fields = fields; + } + public T this[string fieldName] => _fieldsLookup[fieldName]; public T this[int index] => _fields[index]; @@ -75,6 +81,40 @@ public IEnumerator GetEnumerator() public static FieldCollection Empty { get; } = new(Array.Empty()); + internal static FieldCollection TryCreate(T[] fields, out IReadOnlyCollection? duplicateFieldNames) + { + var internalFields = fields ?? throw new ArgumentNullException(nameof(fields)); + var internalLookup = new Dictionary(internalFields.Length, StringComparer.Ordinal); + HashSet? duplicates = null; + + foreach (var field in internalFields) + { +#if NET6_0_OR_GREATER + if (!internalLookup.TryAdd(field.Name, field)) + { + (duplicates ??= new()).Add(field.Name); + } +#else + if (internalLookup.ContainsKey(field.Name)) + { + (duplicates ??= new()).Add(field.Name); + continue; + } + + internalLookup.Add(field.Name, field); +#endif + } + + if (duplicates?.Count > 0) + { + duplicateFieldNames = duplicates; + return Empty; + } + + duplicateFieldNames = null; + return new FieldCollection(internalLookup, fields); + } + private sealed class FieldEnumerator : IEnumerator { private readonly T[] _fields; diff --git a/src/HotChocolate/Core/src/Types/Types/Interceptors/EnableTrueNullabilityTypeInterceptor.cs b/src/HotChocolate/Core/src/Types/Types/Interceptors/EnableTrueNullabilityTypeInterceptor.cs new file mode 100644 index 00000000000..a65c8f5d2f5 --- /dev/null +++ b/src/HotChocolate/Core/src/Types/Types/Interceptors/EnableTrueNullabilityTypeInterceptor.cs @@ -0,0 +1,20 @@ +#nullable enable +using HotChocolate.Configuration; +using HotChocolate.Types.Descriptors; +using HotChocolate.Types.Descriptors.Definitions; + +namespace HotChocolate.Types.Interceptors; + +internal sealed class EnableTrueNullabilityTypeInterceptor : TypeInterceptor +{ + internal override bool IsEnabled(IDescriptorContext context) + => context.Options.EnableTrueNullability; + + public override void OnAfterInitialize(ITypeDiscoveryContext discoveryContext, DefinitionBase definition) + { + if (definition is SchemaTypeDefinition schemaDef) + { + schemaDef.ContextData[WellKnownContextData.EnableTrueNullability] = true; + } + } +} \ No newline at end of file diff --git a/src/HotChocolate/Core/src/Types/Types/Interceptors/MiddlewareValidationTypeInterceptor.cs b/src/HotChocolate/Core/src/Types/Types/Interceptors/MiddlewareValidationTypeInterceptor.cs index 14d83d6880d..4624a115cb2 100644 --- a/src/HotChocolate/Core/src/Types/Types/Interceptors/MiddlewareValidationTypeInterceptor.cs +++ b/src/HotChocolate/Core/src/Types/Types/Interceptors/MiddlewareValidationTypeInterceptor.cs @@ -2,7 +2,6 @@ using System.Text; using HotChocolate.Configuration; using HotChocolate.Language; -using HotChocolate.Types.Descriptors; using HotChocolate.Types.Descriptors.Definitions; using HotChocolate.Utilities; @@ -12,6 +11,14 @@ namespace HotChocolate.Types.Interceptors; internal sealed class MiddlewareValidationTypeInterceptor : TypeInterceptor { + private const string _useDbContext = "UseDbContext"; + private const string _usePaging = "UsePaging"; + private const string _useProjection = "UseProjection"; + private const string _useFiltering = "UseFiltering"; + private const string _useSorting = "UseSorting"; + + private readonly HashSet _names = new(); + public override void OnValidateType( ITypeSystemObjectContext validationContext, DefinitionBase definition) @@ -39,11 +46,14 @@ private void ValidatePipeline( ISyntaxNode? syntaxNode, IList middlewareDefinitions) { + _names.Clear(); + var usePaging = false; var useProjections = false; var useFiltering = false; var useSorting = false; var error = false; + HashSet? duplicates = null; foreach (var definition in middlewareDefinitions) { @@ -56,6 +66,11 @@ private void ValidatePipeline( { error = true; } + + if (!_names.Add(definition.Key)) + { + (duplicates ??= new HashSet()).Add(_useDbContext); + } break; case WellKnownMiddleware.Paging: @@ -64,6 +79,12 @@ private void ValidatePipeline( error = true; break; } + + if (!_names.Add(definition.Key)) + { + (duplicates ??= new HashSet()).Add(_usePaging); + } + usePaging = true; break; @@ -73,20 +94,44 @@ private void ValidatePipeline( error = true; break; } + + if (!_names.Add(definition.Key)) + { + (duplicates ??= new HashSet()).Add(_useProjection); + } + useProjections = true; break; case WellKnownMiddleware.Filtering: + if (!_names.Add(definition.Key)) + { + (duplicates ??= new HashSet()).Add(_useFiltering); + } useFiltering = true; break; case WellKnownMiddleware.Sorting: + if (!_names.Add(definition.Key)) + { + (duplicates ??= new HashSet()).Add(_useSorting); + } useSorting = true; break; } } } + if (duplicates?.Count > 0) + { + throw new SchemaException( + ErrorHelper.DuplicateDataMiddlewareDetected( + field, + type, + syntaxNode, + duplicates)); + } + if (error) { throw new SchemaException( @@ -98,7 +143,7 @@ private void ValidatePipeline( } } - private string PrintPipeline( + private static string PrintPipeline( IList middlewareDefinitions) { var sb = new StringBuilder(); @@ -114,31 +159,31 @@ private string PrintPipeline( case WellKnownMiddleware.DbContext: other = false; PrintNext(); - sb.Append("UseDbContext"); + sb.Append(_useDbContext); break; case WellKnownMiddleware.Paging: other = false; PrintNext(); - sb.Append("UsePaging"); + sb.Append(_usePaging); break; case WellKnownMiddleware.Projection: other = false; PrintNext(); - sb.Append("UseProjection"); + sb.Append(_useProjection); break; case WellKnownMiddleware.Filtering: other = false; PrintNext(); - sb.Append("UseFiltering"); + sb.Append(_useFiltering); break; case WellKnownMiddleware.Sorting: other = false; PrintNext(); - sb.Append("UseSorting"); + sb.Append(_useSorting); break; default: @@ -173,23 +218,4 @@ void PrintOther() } } } -} - -internal sealed class EnableTrueNullabilityTypeInterceptor : TypeInterceptor -{ - internal override bool IsEnabled(IDescriptorContext context) - => context.Options.EnableTrueNullability; - - public override void OnBeforeCreateSchema(IDescriptorContext context, ISchemaBuilder schemaBuilder) - { - base.OnBeforeCreateSchema(context, schemaBuilder); - } - - public override void OnAfterInitialize(ITypeDiscoveryContext discoveryContext, DefinitionBase definition) - { - if (definition is SchemaTypeDefinition schemaDef) - { - schemaDef.ContextData[WellKnownContextData.EnableTrueNullability] = true; - } - } } \ No newline at end of file diff --git a/src/HotChocolate/Core/src/Types/Types/Introspection/__DirectiveArgument.cs b/src/HotChocolate/Core/src/Types/Types/Introspection/__DirectiveArgument.cs index 275c91c823f..bb0dd8a42d1 100644 --- a/src/HotChocolate/Core/src/Types/Types/Introspection/__DirectiveArgument.cs +++ b/src/HotChocolate/Core/src/Types/Types/Introspection/__DirectiveArgument.cs @@ -30,10 +30,10 @@ protected override ObjectTypeDefinition CreateDefinition(ITypeDiscoveryContext c runtimeType: typeof(ArgumentNode)) { Fields = - { - new(Names.Name, type: nonNullStringType, pureResolver: Resolvers.Name), - new(Names.Value, type: nonNullStringType, pureResolver: Resolvers.Value) - } + { + new(Names.Name, type: nonNullStringType, pureResolver: Resolvers.Name), + new(Names.Value, type: nonNullStringType, pureResolver: Resolvers.Value) + } }; } diff --git a/src/HotChocolate/Core/src/Types/Utilities/ErrorHelper.cs b/src/HotChocolate/Core/src/Types/Utilities/ErrorHelper.cs index fe94c6b2110..83329255b7c 100644 --- a/src/HotChocolate/Core/src/Types/Utilities/ErrorHelper.cs +++ b/src/HotChocolate/Core/src/Types/Utilities/ErrorHelper.cs @@ -1,10 +1,12 @@ using System; +using System.Collections.Generic; using System.Globalization; using HotChocolate.Language; using HotChocolate.Properties; using HotChocolate.Types; using HotChocolate.Types.Descriptors.Definitions; using static HotChocolate.Properties.TypeResources; +using IHasName = HotChocolate.Types.IHasName; #nullable enable @@ -402,6 +404,22 @@ public static ISchemaError MiddlewareOrderInvalid( .AddSyntaxNode(syntaxNode) .SetExtension(nameof(field), field) .Build(); + + public static ISchemaError DuplicateDataMiddlewareDetected( + FieldCoordinate field, + ITypeSystemObject type, + ISyntaxNode? syntaxNode, + IEnumerable duplicateMiddleware) + => SchemaErrorBuilder.New() + .SetMessage( + ErrorHelper_DuplicateDataMiddlewareDetected_Message, + field.ToString(), + string.Join(", ", duplicateMiddleware)) + .SetCode(ErrorCodes.Schema.MiddlewareOrderInvalid) + .SetTypeSystemObject(type) + .AddSyntaxNode(syntaxNode) + .SetExtension(nameof(field), field) + .Build(); public static ISchemaError NoSchemaTypesAllowedAsRuntimeType( ITypeSystemObject type, @@ -470,4 +488,53 @@ public static IError FetchedToManyNodesAtOnce( .SetPath(path) .SetCode(ErrorCodes.Execution.FetchedToManyNodesAtOnce) .Build(); + + public static ISchemaError NoFields( + ITypeSystemObject typeSystemObj, + IType type) + => SchemaErrorBuilder.New() + .SetMessage( + FieldInitHelper_NoFields, + type.Kind.ToString(), + typeSystemObj.Name) + .SetCode(ErrorCodes.Schema.MissingType) + .SetTypeSystemObject(typeSystemObj) + .AddSyntaxNode((type as IHasSyntaxNode)?.SyntaxNode) + .Build(); + + public static ISchemaError DuplicateFieldName( + ITypeSystemObject type, + ITypeSystemMember declaringMember, + IReadOnlyCollection duplicateFieldNames) + { + var field = declaringMember is IType + ? "field" + : "argument"; + + var coordinate = declaringMember is IType + ? new SchemaCoordinate(type.Name) + : new SchemaCoordinate(type.Name, ((IHasName)declaringMember).Name); + + var s = string.Empty; + var @is = "is"; + + if (duplicateFieldNames.Count > 1) + { + s = "s"; + @is = "are"; + } + + return SchemaErrorBuilder.New() + .SetMessage( + ErrorHelper_DuplicateFieldName_Message, + field, + s, + string.Join(", ", duplicateFieldNames), + @is, + coordinate.ToString()) + .SetCode(ErrorCodes.Schema.DupplicateFieldNames) + .SetTypeSystemObject(type) + .AddSyntaxNode((declaringMember as IHasSyntaxNode)?.SyntaxNode) + .Build(); + } } diff --git a/src/HotChocolate/Data/test/Data.Tests/IntegrationTests.cs b/src/HotChocolate/Data/test/Data.Tests/IntegrationTests.cs index 910278b9330..db8be78f16a 100644 --- a/src/HotChocolate/Data/test/Data.Tests/IntegrationTests.cs +++ b/src/HotChocolate/Data/test/Data.Tests/IntegrationTests.cs @@ -1,6 +1,8 @@ // ReSharper disable ClassNeverInstantiated.Local // ReSharper disable UnusedMember.Local // ReSharper disable UnusedAutoPropertyAccessor.Global +// ReSharper disable MemberCanBePrivate.Global +// ReSharper disable MoveLocalFunctionAfterJumpStatement using System.Collections.Generic; using System.Linq; @@ -9,7 +11,6 @@ using HotChocolate.Execution; using HotChocolate.Types; using Microsoft.Extensions.DependencyInjection; -// ReSharper disable MemberCanBePrivate.Global namespace HotChocolate.Data; @@ -460,8 +461,7 @@ fragment Test on Author { } [Fact] - public async Task - ExecuteAsync_Should_ProjectAndPage_When_NodesFragmentContainsProjectedField() + public async Task ExecuteAsync_Should_ProjectAndPage_When_NodesFragmentContainsProjectedField() { // arrange var executor = await new ServiceCollection() @@ -501,8 +501,7 @@ fragment Test on Book { } [Fact] - public async Task - ExecuteAsync_Should_ProjectAndPage_When_NodesFragmentContainsProjectedField_With_Extensions() + public async Task ExecuteAsync_Should_ProjectAndPage_When_NodesFragmentContainsProjectedField_With_Extensions() { // arrange var executor = await new ServiceCollection() @@ -741,8 +740,7 @@ public async Task ExecuteAsync_Should_ArgumentAndFirstOrDefault_When_Executed() } [Fact] - public async Task - Schema_Should_Generate_WhenMutationInputHasManyToManyRelationshipWithOutputType() + public async Task Schema_Should_Generate_WhenMutationInputHasManyToManyRelationshipWithOutputType() { // arrange var executor = await new ServiceCollection() @@ -762,8 +760,7 @@ public async Task } [Fact] - public async Task - Schema_Should_Generate_WhenMutationInputHasManyToOneRelationshipWithOutputType() + public async Task Schema_Should_Generate_WhenMutationInputHasManyToOneRelationshipWithOutputType() { // arrange var executor = await new ServiceCollection() @@ -783,8 +780,7 @@ public async Task } [Fact] - public async Task - Schema_Should_Generate_WhenStaticTypeExtensionWithOffsetPagingOnStaticResolver() + public async Task Schema_Should_Generate_WhenStaticTypeExtensionWithOffsetPagingOnStaticResolver() { // arrange var executor = await new ServiceCollection() @@ -799,7 +795,26 @@ public async Task // assert result.MatchSnapshot(); } - + + [Fact] + public async Task Duplicate_Filter_Attribute_Throws() + { + // arrange + async Task Error() + => await new ServiceCollection() + .AddGraphQL() + .AddQueryType() + .AddFiltering() + .BuildRequestExecutorAsync(); + + // act & assert + var error = await Assert.ThrowsAsync(Error); + error.Errors[0].Message.MatchInlineSnapshot( + """ + The field `DuplicateAttribute.addBook` declares the data middleware `UseFiltering` more than once. + """); + } + [QueryType] public static class StaticQuery { @@ -950,4 +965,19 @@ public IQueryable AddBook(Book book) } }.AsQueryable(); } + + public class DuplicateAttribute + { + [UseFiltering] + [UseFiltering] + public IQueryable AddBook(Book book) + => new[] + { + new Author + { + Name = "Author", + Books = new List { book } + } + }.AsQueryable(); + } }