我想要做這樣的事情。我知道這是錯誤的:我如何使用linq中的「like」到xml
var a = from h in xdoc.Root.Elements()
where h.Element().value like = "1234"
select h;
我想要做這樣的事情。我知道這是錯誤的:我如何使用linq中的「like」到xml
var a = from h in xdoc.Root.Elements()
where h.Element().value like = "1234"
select h;
var a = from h in xdoc.Root.Elements()
where h.Element.value.Contains("1234")
select h
這會在後臺生成一個'LIKE'語句。
我認爲,你想要得到的元素Contains
的1234
值:
var a = from h in xdoc.Root.Elements()
where h.Element().Value.Contains("1234") // like '%1234%'
select h;
對於SQL十歲上下like '%value'
你可以使用EndsWith,併爲like 'value%'
StartsWith
使用String類的幫助器方法,如StartsWith
或EndsWith
。
這裏我使用StartsWith()方法來做同樣的事情。
var CountryNames = from city in xdoc.Descendants("countries").Elements("city")
where city.Value.StartsWith(prefixText)
select city.Value;
THX了很多這就是完美的工作。我怎麼能這樣做h.Element.Name?因爲Element.Name doest有「Contains」。 – cagin 2009-09-25 07:39:33
.NET中的任何字符串都應該有一個Contains方法。 – James 2009-09-25 08:45:46