Добавление кнопки с ссылкой

80
18 января 2022, 16:50

Коллеги, доброго времени суток. У меня меня есть страница формата ".razor" и я пытаюсь сделать кнопку с url по которой пользователь будет переходить по ссылке.

На бэке я генерирую в строку ссылку:

private string BuildAuthorizationUrl()
{
    var url = new StringBuilder(_vkModel.Url)
        .Append(_vkModel.ClientId)
        .Append("&")
        .Append(_vkModel.Display)
        .Append("&")
        .Append(_vkModel.RedirectUri)
        .ToString();
    return url;
}

Ссылка получается корректной и работает если вставить ее в браузер:

https://oauth.vk.com/authorize?client_id=000000&display=page&redirect_uri=https://localhost:44346

Через контролер передаю ее на .razor страницу. Роуты и ActionResult специально не юзаю, т.к. хочу накидать рабочий скелет и затем нарастить. Дебажил, ссылка передается также корректно

public string AuthorizationIndex()
{
    var vkUrl = controller.GetAuthorizationsUrl();
    return vkUrl;
}

В razor странице добавляю кнопку:

@page "/fetchdata"
@using Project.Controllers
@{Controller controller = new Controller(); }
<form action=@controller.AuthorizationIndex()>
    <button>Click Me</button>
</form>
<button formaction=@controller.AuthorizationIndex()> Зарегистрироваться </button>

Кнопка "Click me" работает, но ссылка почему-то кладется не корректно после символа "&" добавляется "amp;" и насколько мне известно, использовать такую кнопку не лучший вариант

Вторая кнопка и все остальные, которые я пытался добавить содержат корректную ссылку но не работают.

Как мне правильно создать эту кнопку и передать корректно ссылку? Если вдруг все у меня ужасно и у Вас будет время подсказать больше, буду очень Вам благодарен.

Дополнительный вопрос(если он выходят за рамки данной темы, прошу проигнорить): 1) мне вернется токен, как мне его принять после нажатия на кнопку?

Answer 1

Помогло это

<a href="@controller.AuthorizationIndex() ">
        <span class='btn btn-primary'>Click</span>
</a>
READ ALSO
С# задать значение переменной - вызвать метод

С# задать значение переменной - вызвать метод

Добрый день дамы и господа) набросал тут вот такой код:

90
C# WPF Как в List View заменить ListViewItem на класс-наследник?

C# WPF Как в List View заменить ListViewItem на класс-наследник?

У меня есть например класс-наследник от ListViewItem - AdvancedListViewItemВ XAML я могу задать

80
Атомарный метод Interlocked.Add

Атомарный метод Interlocked.Add

По какой причине метод InterlockedAdd принимает только int? Чем double мешает при атомарности?

94