文本字符串中的ASP.NET Razor标记帮助程序



在我的剃刀页面视图中,我正在填充一个模型以传递给分部,如下所示:

剃刀页面

@{
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 asp-page="/Login">替换硬编码的锚标记<a href="/login">login</a>,并使其正确呈现HTML?

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."
};
}

最新更新