【发布时间】:2015-04-14 23:41:11
【问题描述】:
我的问题使用以下代码 -
string searchString = dropdownlist.SelectedValue;
List objects = (from o in Object.List()
where dropdownlist.SelectedIndex <= 0 ||
o.CustomField.Contains(searchString)
orderby o.Date descending
select order).ToList();
我遇到的情况如下 - 下拉列表中的项目是通用消息,例如“客户'{0}'有'{1}'订单”。在对象方面,o.CustomField 看起来像“客户 'Bob' 有 '5' 个订单”。显然,这意味着
o.CustomField.Contains(searchString)
不会返回任何东西。我一直在研究通配符,但未能成功返回。这就是我尝试设置通配符的方法:
searchString = dropdownlist.SelectedValue.Replace("{0}", "*").Replace("{1}", "*");
我想知道是否有比坐下来解析 '{' 或 '}' 之间的所有不同子字符串更简洁的方法。
【问题讨论】:
-
所以,为了清楚起见,您希望将字符串:
Customer '{0}' has '{1}' orders与:Customer * has * orders匹配? -
正确,这就是我想要的。
-
研究使用正则表达式。这是一笔不小的投资,但它会有所回报。