Asp.NET MVC表单条目显示为指向外部站点的链接吗?

问题描述

我有一个包含如下代码的视图:

    <dt class="col-sm-2">
        @Html.displayNameFor(model => model.RegistrationLink)
    </dt>
    <dd class="col-sm-10">
        @Html.displayFor(model => model.RegistrationLink)
    </dd>

想法是用户在表单中输入指向其网站的链接。然后,在我的网站上,该链接显示一个链接一个人可以单击以转到该网站。如果可以的话,请帮忙。 我尝试使用 < a href="@Html.displayFor(model => model.RegistrationLink)"></a> 但不幸的是,这行不通。

解决方法

简单的方法是在视图模型中设置链接的格式,如下所示:

public class MyViewModel
{
    private string link = "http://www.google.com";

    public string RenderLink {
        get
        {
            return $"<a href='{link}'> {link} </a>";
        }
    }
}

之后,您可以使用@ Html.Raw在剃刀视图中显示html代码:

@Html.Raw(Model.RenderLink)