【问题标题】:How to compare an alphanumeric string with a List<string> which also has alphanumeric values C#如何将字母数字字符串与也具有字母数字值的 List<string> 进行比较 C#
【发布时间】:2014-04-05 21:34:58
【问题描述】:

我无法弄清楚如何将字母数字字符串与其中也包含字母数字值的列表字符串进行比较。

例如:-

我有一个发票号:Sales111 为了检查数据库中是否存在同一张发票,我为此编写了代码

这里 CheckInvoice() 从数据表中返回所有发票号

 public List<String> CheckInvoice()
        {
            try
            {
                SPDatalogic sp = new SPDatalogic(); //datalogic class
                DataTable dt = new DataTable() ;
                dt = sp.CheckInvoice();
                List<String> list = new List<String>();

                foreach (DataRow dr in dt.Rows)
                {                    
                    list.Add(dr["invoice_id"].ToString());// column name of invoice no
                }

                return list;
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }

表示层:-

             SPBusinesslogic ab = new SPBusinesslogic(); //businesslogic class
             List<String> inv = new List<String>();
             inv = ab.CheckInvoice();

             if (inv.Any(x => x.Equals(invoiceid_textbox.Text.Trim())))
             {
                        MessageBox.Show("The invoice already exist!");
                    }

我可以通过哪些方式进行检查? 不排序字母和数字怎么办?

【问题讨论】:

  • 你能用ab.CheckInvoice()返回的值更新你的问题吗?
  • 我不知道你想听到什么答案。
  • @RandRandom 我写的代码不起作用我认为我在表示层比较存在问题
  • @geedubb 我更新了! checkInvoice 从数据表中返回所有发票号
  • 顺便说一句:当数据库中只有几张发票时,加载所有发票数据的方法在开始时效果很好。将发票 ID 发送到数据库并检查具有该 ID 的记录是否已经存在而不是加载所有数据会更有效。这将更好地扩展。

标签: c# list


【解决方案1】:

为什么要使用 Linq 来完成这个简单的任务?您可以简单地使用List&lt;T&gt;.Contains(item) 方法

        List<string> lollipop = new List<string>();
        //Do something
        if(lollipop.Contains("lollipop"))
         //DO something
        else
        //Something else

更简单,完美解决您的问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-09
    • 2014-09-13
    • 1970-01-01
    • 2017-04-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多