¿Cómo unir URLs correctamente en C#? Análogo de Path.Combine para direcciones web
¡Hola a todos! Soy nuevo en C# y estoy escribiendo una pequeña aplicación para trabajar con una API. Necesito formar dinámicamente URLs de diferentes endpoints. Por ejemplo, tengo una URL base https://api.example.com/v1/ y quiero agregarle una ruta como /users/123 o /products?page=2.
Intenté usar Path.Combine, como para rutas de archivos normales, pero esto da resultados extraños. Aquí un ejemplo:
string baseUrl = "https://api.example.com/v1/";
string endpoint = "/users/123";
string result = Path.Combine(baseUrl, endpoint);
Console.WriteLine(result);
// Salida: "https:\\api.example.com\\v1\\users\\123"
// ¡Nota: las barras están al revés!
¡Esto es una tontería! Path.Combine usa la barra invertida, ya que está diseñado para Windows. Si intento simplemente concatenar strings con +, obtengo problemas con dobles barras o su ausencia.