Я хотел бы узнать, есть ли способ поиска записей по идентификатору в MVC Я видел несколько примеров, но большинство использует String, и мое поле - Десятичное, это то, что я ищу. В основном мне нужно отфильтровать свои записи, используя идентификатор в TextBox
localhost/Search?req_no=1
У меня есть следующий код, но я не знаю, если он правильный, спасибо.
Контроллер
namespace MvcApplication31.Controllers
{
public class SearchController : Controller
{
//
// GET: /Search/
public ActionResult Search()
{
Entities db = new Entities();
return View(db.TB_CS_TEST.ToList());
}
[HttpPost]
public ActionResult Search(decimal? reqid)
{
Entities db = new Entities();
var req = from r in db.TB_CS_TEST
select r;
if (reqid.HasValue)
{
req = req.Where(s => s.REQ_NO.Equals(reqid));
}
return View(req);
}
}
}
Вид
@model IEnumerable<MvcApplication31.TB_CS_TEST>
@{
ViewBag.Title = "Search";
}
<h2>Search</h2>
<p>
@Html.ActionLink("Create New", "Create")
@using (Html.BeginForm("Search","Search", FormMethod.Post)){
<p> Request Number: @Html.TextBox("reqid") <br />
<input type="submit" value="Search" /></p>
}
</p>
Класс
namespace MvcApplication31
{
using System;
using System.Collections.Generic;
public partial class TB_CS_TEST
{
public decimal REQ_NO { get; set; }
public Nullable<decimal> SEQ_NO { get; set; }
public Nullable<decimal> ITEM_ID { get; set; }
public Nullable<decimal> QUANTITY { get; set; }
public string UOM { get; set; }
public Nullable<decimal> UNIT_PRICE { get; set; }
public Nullable<decimal> EXTENDED_AMT { get; set; }
public Nullable<System.DateTime> CRT_DATE { get; set; }
public decimal REQDTL_ID { get; set; }
public virtual TB_CS_TEST2 TB_CS_TEST2 { get; set; }
}
}