Я новичок здесь, и у меня есть вопрос о поисковой части кода в MVC 4. У меня есть этот кусок кода:Поиск Issue в ASP.NET MVC 4
public ActionResult Index(string searchTerm = null)
{
var model = entities.Users
.Where(m => searchTerm == null || m.SureName.Contains(searchTerm))
.Select(m => new UserViewModel
{
Name = m.Name,
SureName = m.SureName,
Department = m.Department,
Mail = m.Mail
});
}
Index.cshtml
<form method="get">
<input type="search" name="searchTerm " />
<input type="submit" value="Search ..." />
</form>
@foreach (var item in Model)
{
<div>
<h4>@item.Name, @item.SureName</h4>
<div>@item.Department, @item.Mail</div>
</div>
}
Когда я запускаю это, он работает, пока я не хочу искать что-либо. Проблема в маршрутизации. Потому что, если я буду вручную набирать «: XXXX /? SearchTerm = Luk», все работает нормально. Но когда я делаю то же самое на URL страницы, это выглядит так: «XXXX /? SearchTerm + = Luk». Кто-нибудь знает, почему есть знак +? Я думаю, что это проблема, которую я имею здесь.
'+' используется для пробелов() в url – Satpal
The + исходит из пробела между m и конечной цитатой в name = "searchTerm" – Rune
Задайте свой вопрос ** содержательный ** название, пожалуйста. – abatishchev