ASP. NET Помощник тега Razor внутри текстовой строки - PullRequest
2 голосов
/ 07 марта 2020

В моем просмотре страницы бритвы я заполняю модель для перехода к частичному, например:

Страница бритвы

@{
    if (Model.Success)
    {
        Model.AlertMessage = new AlertMessage()
        {
            Title = "Email Confirmed",
            Description = "Your email has been confirmed, you can now <a href=\"/login\">login</a> to your account."
        };
    }
    else
    {
        Model.AlertMessage = new AlertMessage()
        {
            Title = "Confirmation Failed",
            Description = "Your email could not be confirmed, please <a href=\"/confirmemail\">try again</a>."
        };
    }
}

<div class="row">
<div class="col-md-8 offset-md-2">
    <partial name="_Partials/Alerts/_AlertMessage", model="Model.AlertMessage"/>
</div>

Частичное представление

@model AlertMessage

<div class="alert">
<div class="row">
    <div class="col-auto align-self-center alert-icon">
    </div>
    <div class="col">
        <span class="alert-title">@Model.Title</span>
        <p class="alert-content">@Html.Raw(@Model.Description)</p>
    </div>
</div>

Вышеописанное работает, но мне интересно, можно ли использовать вспомогательный тег тега бритвы внутри текстовой строки? Чтобы как-то заменить жестко привязанный тег привязки <a href=\"/login\">login</a> на помощник тега <a asp-page="/Login"> и сделать так, чтобы HTML отображался правильно?

1 Ответ

1 голос
/ 08 марта 2020
    if (Model.Success)
{
    Model.AlertMessage = new AlertMessage()
    {
        Title = "Email Confirmed",
        Description = "Your email has been confirmed, you can now" + @Html.ActionLink("Login", "Login") + "to your account."
    };
}
...