¿Cómo obtener la URL de la página actual en ASP.NET C#?
¡Hola a todos! Soy nuevo en C# y ASP.NET, y tengo un problema aparentemente simple. Necesito obtener la dirección completa de la página actual en la que se encuentra el usuario, por ejemplo, para pasarla a un enlace de retroalimentación o guardarla en un log.
He probado varias opciones, pero ninguna funciona como espero. Esto es lo que intenté:
```csharp
// Intento 1: Simplemente Request.Url
string url = Request.Url.ToString(); // Devuelve algo extraño, como http://localhost:5000/Default.aspx, pero sin parámetros
// Intento 2: HttpContext.Current
string currentUrl = HttpContext.Current.Request.Url.AbsoluteUri; // Parece funcionar, pero a veces devuelve null
// Intento 3: Usar Page.Request
string pageUrl = Page.Request.Url.ToString(); // Error: "Page" no existe en el contexto actual
```
Estoy trabajando con Web Forms (proyecto antiguo), pero también quiero entender cómo hacerlo en ASP.NET MVC y Razor Pages. Necesito obtener:
1. La URL completa (con http/https, dominio, puerto, ruta