[英]How to Compare List<> values with a Textbox
我從清單CheckProduct(int id)
發票表中獲取產品ID:
int id = int.Parse(invoice_no.Text); // passing textbox value to list
SPBusinesslogic ab = new SPBusinesslogic();
List<SPBusinesslogic> invv = new List<SPBusinesslogic>();
invv = ab.CheckProduct(id);
if (invv.Equals(int.Parse(up_invno_txtbox.Text))) /comparing values in list
{
MessageBox.Show("the product already exist");
}
else
{ //add new product code
}
我無法比較此值,如果我犯了任何錯誤,請讓我知道。
查看產品:
public List<SPBusinesslogic> CheckProduct(int id)
{
try
{
SPDatalogic sp = new SPDatalogic();
DataTable dt = new DataTable();
dt = sp.CheckProduct(id);
List<SPBusinesslogic> invinfo = new List<SPBusinesslogic>();
foreach (DataRow dr in dt.Rows)
{
SPBusinesslogic ab = new SPBusinesslogic();
ab.Pro_id = int.Parse(dr[0].ToString());
invinfo.Add(ab);
}
return invinfo;
}
catch (Exception e)
{
throw new Exception(e.Message);
}
我懷疑您想要類似的東西 :
// TODO: Give your variables more meaningful names throughout...
int id = int.Parse(up_invno_txtbox.Text);
if (invv.Any(item => item.Id == id))
{
...
}
else
{
...
}
顯然,可以根據您的要求調整item
的使用,但是這種通用模式適合於查找謂詞的現有匹配項。
如果您在列表中匹配的參數是id,則該參數應可用於比較檢查
(invv.Where(a=> a.id == int.Parse(up_invno_txtbox.Text)).Count() > 0)
甚至
(invv.Where(a=> a.id == int.Parse(up_invno_txtbox.Text)).FirstOrDefault() != null)
if(invv.Any(o=>o.id==Convert.ToInt32(up_invno_txtbox.Text)))
{
MessageBox.Show("the product already exist");
}
else
{
//add new product code
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.