Нужна помощь с Razor Pages, Проблема с переадресацией?

Привет. Пока каникулы решил писать код, развиваться. Делаю сервис укорачивания ссылок и дальнейшее с переадресацией туда.

Programm.cs
using Microsoft.EntityFrameworkCore;
using URL.DatabaseFiles.Context;

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddRazorPages();
var connectionString = builder.Configuration.GetConnectionString("DatabaseCredentials");
builder.Services.AddDbContext<MyDbContext>(s => s.UseNpgsql(connectionString));
var app = builder.Build();
// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Error");
    // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
    app.UseHsts();
}

app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();
app.MapRazorPages();
app.Run();


Index.cshtml

@page "{shortUrl?}"

@model URL.Pages.IndexModel
@{
    ViewBag.Title = "Сокращение длины ссылок";
}

<h2>@Model.Message</h2>

<form method="post">
    <p>
        <label>Ссылку:</label><br />
        <input type="text" name="userLink"/>
    </p>
    <button type="submit" class="btn btn-primary">Отправить</button>
</form>


Index.cshtml.cs
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using URL.DatabaseFiles.Context;
using URL.DatabaseFiles.Models;

namespace URL.Pages
{
    [IgnoreAntiforgeryToken]
    public class IndexModel : PageModel
    {
        public string Message { get; private set; } = "";
        private readonly MyDbContext _db;
        const string range = "qwertyuiopasdfghjklzxcvbnm1234567890QWERTYUIOPASFGHJKLZXCVBNM";
        private readonly IConfiguration _configuration;
        public IndexModel(MyDbContext db, IConfiguration configuration)
        {
            _db = db;
            _configuration = configuration;
        }
        public void OnGet()
        {
            Message = "Введите ссылку";
        }
        public void OnPost(string userLink)
        {
            Random random = new Random();
            string name = new string(Enumerable.Repeat(range, 6).Select(s => s[random.Next(s.Length)]).ToArray());
            Link link = new Link
            {
                Url = userLink,
                ShortedUrl = name
            };
            _db.Links.Add(link);
            _db.SaveChanges();
            Message = $"Ссылка готова - {_configuration.GetSection("Link:ShortUrl").Value + name}";

        }
        public IActionResult OnGetRedirect(string shortUrl)
        {
            Link link = _db.Links.FirstOrDefault(s => s.ShortedUrl == shortUrl);
            if (link != null)
            {
                return  Redirect(link.Url);
            }
            else
            {
                return  Redirect(_configuration.GetSection("Link:ShortUrl").Value);
            }
        }
    }
}


Я знаю, есть проблемы с архитектурой, я с ними разберусь , но помогите мне пожалуйста, что мне нужно добавить, чтобы страница переадресовывалась на внешний сайт, а не обратно на локалхост.
Помогите, что нужно добавить, чтобы я наконец перестал не спать и искать инфу в интернете. Пожалуйста помогите мне успокоиться , а то я нервничаю, что не могу найти инфу.
  • Вопрос задан
  • 44 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы