Here's my scenario. I have a GraphQL gateway that stitches a dozen or so remote schemas together, using the following code:
services.AddHttpClient(schema.TypeName, c => c.BaseAddress = new Uri(schema.Url));
public virtual void Add(IRequestExecutorBuilder builder, bool ignoreRootTypes = true)
{
var type = this.GetType();
builder.AddRemoteSchema(type.Name, ignoreRootTypes);
}
Assume that the remote schemas are immutable. One of the remote schemas has a type called Name. This appears to be a reserved keyword, because during stitching, I get the exception:
For more details look at the
Errorsproperty.
- An item with the same key has already been added. Key: Name
I can correct this error by modifying the Name type of the remote service to be something like PersonName, however, as I mentioned above, these external schemas should be immutable.
Is there a way to rename a restricted type before this exception is thrown at the Gateway level?