Changing from a StringBuilder to using your UriTemplateBuilder for all resolves may impact speed but I wasn't keen on having two very similar Resolve methods everywhere. This could be fixed by a new abstraction where you could choose to use either a StringBuilder or a UriTemplateBuilder.