【发布时间】:2016-02-25 19:20:20
【问题描述】:
我的表格有 5 列:
public partial class NPG_Chemical_DOT_and_Guide_Numbers
{
[Key]
[Column(TypeName = "numeric")]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public decimal NPG_Chemical_DOT_and_Guide_Numbers_ID { get; set; }
[Column(TypeName = "numeric")]
public decimal NPG_Chemical_ID { get; set; }
[StringLength(64)]
public string DOT_Number { get; set; }
public string Guide_Number { get; set; }
[StringLength(128)]
public string Conditional { get; set; }
}
现在我可以使用以下方法在表格中搜索文本值:
public ActionResult Index(string searchString)
{
var search = from m in db.NPG_Chemical_DOT_and_Guide_Numbers
select m;
if (!String.IsNullOrEmpty(searchString))
{
search = search.Where(s => s.DOT_Number.Contains(searchString) || s.Guide_Number.Contains(searchString) ||s.Conditional.Contains(searchString));
}
return View(search);
}
和:
<p>
@using (Html.BeginForm())
{
<p>
Title: @Html.TextBox("SearchString")
<input type="submit" value="Search" />
</p>
}
</p>
问题是如何搜索十进制值?我尝试使用转换为字符串,但显示 LINQ 错误。
【问题讨论】:
-
十进制值是什么意思?你面临什么错误?
-
前两列是十进制类型而不是字符串类型,所以我无法使用以下方法搜索它们: if (!String.IsNullOrEmpty(searchString)) { search = search.Where(s=>s.DOT_Number .Contains(searchString)) }
-
Layla,您可以查看@YazanAti 发布的答案或我在上述评论中提供的其他答案,如果这些答案对您不起作用,请告诉我们。
-
您的目标是什么 EF 版本?
标签: asp.net asp.net-mvc linq asp.net-mvc-4