首页 > 解决方案 > 将@Url.Action 存储在变量中

问题描述

我正在开发一个 ASP.NET MVC4 项目。

在我的一个观点中,我试图将@Url.Action结果存储在字符串变量中,并将其传递给<a href="..."></a>链接。

我得到了一些奇怪的结果:

发生了一些奇怪的事情,所以我没有关注上面的错误,而是试图找出:有没有办法将 a 存储@Url.Action在变量中并将其传递给<a href="..."></a>

我认为的代码如下:

@{
    string actionHelper = null;
}

    @if (resultEnd == Model.Search.CountSubjectItems && Model.Search.Page > 1)
    {
        if (!Model.Search.GeneralSearch)
        {
            actionHelper = @Url.Action("LandingPage", "Explore", new { i = Model.ID, page = Model.Page - 1 }, null);
        }
        else
        {
            actionHelper = @Url.Action("SearchPage", "Explore", new { i = Model.ID, page = Model.Page - 1 }, null);
        }
        <span>
            <a href="@actionHelper">
                <span class="glyphicon glyphicon-chevron-left" aria-hidden="true" title="Previous"></span> Prev
            </a>
        </span>
    }

标签: c#asp.net-mvc

解决方案


@从对方法的调用中删除符号Url.Action

if (!Model.Search.GeneralSearch)
{
    actionHelper = Url.Action("LandingPage", "Explore", new { i = Model.ID, page = Model.Page - 1 }, null);
}
else
{
    actionHelper = Url.Action("SearchPage", "Explore", new { i = Model.ID, page = Model.Page - 1 }, null);
}

推荐阅读