[英]searching through the whole website rather than a group of products
我有一个搜索 controller ,它获取 Searchid 和 keywordSearch 以显示搜索结果。 例如,用户可以在移动类别中搜索 iPhone。 我正在尝试对所有产品组(Searchid)中的任何关键字(KeywordSearch)进行搜索,我需要帮助。
HTML 代码:
<div class="top_search_form">
@using (Html.BeginForm("Search", "Home", FormMethod.Get, new { @class = "search_form clearfix", @id = "frm_topsearch" }))
{
<div id="search_box">
<select name='Searchid' style="margin-left:1px;">
@foreach (var item1 in repsearch.GetGroup())
{
<option value='@item1.Group_ID'>@item1.Group_Name</option>
}
</select>
<input type="text" placeholder="search" name='keywordSearch'>
<input type="submit" class="fa fa-search" style="margin-right: 1px;width:38px !important;background-color: #CC456B !important;height: 34px !important;" name="name" value="search" />
</div>
<div id="search_result_box">
</div><!-- end search_result_box -->
}
controller:
[HttpGet]
public ActionResult Search(int Searchid, string keywordSearch)
{
var qid = db.Tbl_Group.Where(a => a.Group_ID == Searchid).FirstOrDefault();
if (qid == null)
{
return RedirectToAction("Index");
}
else
{
if (keywordSearch == "" || keywordSearch == null)
{
var q = db.Tbl_Product.Where(a => a.Product_Groupid == Searchid).ToList();
if (q == null)
{
ViewBag.State = "Error";
ViewBag.Key = keywordSearch;
ViewBag.Groupid = Searchid;
return View();
}
else
{
ViewBag.State = "Ok";
ViewBag.Key = keywordSearch;
ViewBag.Groupid = Searchid;
return View(q);
}
}
else
{
var search = (from a in db.Tbl_Product where a.Product_Groupid == Searchid && a.Product_Name.Contains(keywordSearch) select a).ToList();
if (search == null)
{
ViewBag.State = "Error";
ViewBag.Key = keywordSearch;
ViewBag.Groupid = Searchid;
return View();
}
else
{
ViewBag.State = "Error";
ViewBag.Key = keywordSearch;
ViewBag.Groupid = Searchid;
return View(search);
}
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.