我有以下代码:
string s = "123,12346";
bool b = s.Contains("1234");
以上都返回true,但有没有办法返回false。我已经做过类似的事情:
string[] s = {"123","12346"};
bool b = s.Contians("1234");
以上内容有效,但我无法在LINQ-To-Entities
的包含表达式中使用上述内容,因为它不喜欢pre EF 4.0
中的包含。
我有一个扩展方法,其行为类似于SQL IN
子句,但我需要在使用它时显式键入参数,我不知道在括号之间放置什么:
predicate = predicate(x=> WhereIn<>(x.Id, Ids));
x.Id is a string and Ids is a string
也是。如果我提出WhereIn<string,string>
,则会抱怨Argument type string is not assignable to parameter type ObjectQuery<string>
predicate
来自PredicateBuilder
:http://www.albahari.com/nutshell/predicatebuilder.aspx
答案 0 :(得分:-2)
使用
string searchString = "123,12346";
bool b = sep(searchString,",").Contains("1234");
//Returns this string before ","
public static string sep(string s,string delimiter)
{
int indx = s.IndexOf(delimiter);
if (indx >0)
{
return s.Substring(0, indx);
}
return "";
}