ASP.NET MVC:如何从搜索结果中获取文章的URL?

问题描述

我有一个ASP.NET MVC项目。我试图在搜索后从视图中获取文章网址。我不知道如何在控制器中获取它。

感谢任何想法。

这是我的观点:

<table>
     @foreach (var item in Model)
     {
            <tr>
                <td>
                   <a href="@Html.displayFor(modelItem => item.url)" target="_blank"> @Html.displayFor(modelItem => item.title)</a>
                </td>
                <td>
                   @Html.displayFor(GetNews1s => item.author)
                </td>
                <td>
                   @Html.displayFor(modelItem => item.publishedAt)
                </td>
           </tr>
     }
</table>

这是我的控制器部分:


var userList = from s in db.GetNews1s() select s;

if (searchString != null)
{
    userList = userList.Where(s => s.title.Contains(searchString)
                                || s.author.Contains(searchString));

    string sd = startdate.Value.ToString("yyyy-MM-dd");
    string ed = enddate.Value.ToString("yyyy-MM-dd");

    run_cmd("D:/Python/wordcloudjieba.py","" + sd + "","" + ed + "");

    ViewBag.wc = @"picture/wcp1.png";     
}

if (startdate.HasValue)
{
     userList = userList.Where(x => x.publishedAt > startdate.Value.Date);
     ViewBag.startdate = startdate;                
}

if (enddate.HasValue)
{
     userList = userList.Where(x => x.publishedAt < enddate.Value.Date);
     ViewBag.enddate = enddate;
}

解决方法

如果您有“ @ Html.DisplayFor(modelItem => item.url)”,则不会将值回传给控制器。将其添加如下。

@Html.HiddenFor(modelItem => item.url)