Así que tengo este objeto Uri
que contiene una dirección, algo así como http://localhost:1000/blah/blah/blah
. Necesito cambiar el número de puerto y dejar todas las demás partes de la dirección intactas. Digamos que necesito que sea http://localhost:1080/blah/blah/blah
.Cambiando el puerto del System.Uri
Los objetos Uri
son prácticamente inmutables, así que puedo acceder al número de puerto a través de la propiedad Port
, pero es de solo lectura. ¿Hay alguna forma sensata de crear un objeto Uri
exactamente igual a otro pero con un puerto diferente? Con "sano" me refiero a "sin meterme con expresiones regulares y manipulaciones de cadenas" porque aunque es trivial para el ejemplo anterior, todavía me huele a una lata de gusanos. Si esa es la única manera, realmente espero que ya haya sido implementado por alguien y haya algunos ayudantes por ahí tal vez (aunque no encontré ninguno)
Gracias de antemano.
Una cosa a tener en cuenta sobre la 'UriBuilder' es que si se establece el' Port' a ** -1 ** usa el valor predeterminado para el protocolo, tan útil si no desea el resultado del # de puerto. –
@PaulTyng gracias por esa joya escondida! Eso es exactamente lo que estaba buscando. (junto con la clase UriBuilder) –
¿Qué es Scheme, sin embargo? ¿Qué hace, y qué debería poner allí? – Cullub