XElement中的通配符搜索

时间:2013-03-26 17:03:36

标签: c# xml wildcard xelement

我正在使用XElement搜索用户通过openfiledialog选择的XML文档。

以下是代码:

private void dothis()
    {
        string query;

        XElement xml = XElement.Load(path);
        XNamespace ns = xml.GetDefaultNamespace();
        IEnumerable<XElement> symptoms = 


        from item in xml.Descendants(ns + "section")

        where (string) item.Element(ns + "text") == queryString.Text
        select item;

        // Execute the query 
        foreach (var complaints in symptoms)
        {
            // Instantiate the writer
            _writer = new TextBoxStreamWriter(txtConsole);
            // Redirect the out Console stream
            Console.SetOut(_writer);


            Console.WriteLine(complaints);

        }

        //Pause the application 
        Console.ReadLine();
    }

我想使基于queryString.text的查询成为通配符。

因此,文本字段可能包含Confusion,Nausea,Headache

如果我只是在我的queryString文本框中键入混淆,那么我希望它仍然可以找到该元素和节点。

谢谢

1 个答案:

答案 0 :(得分:1)

听起来你想要的只是:

where item.Element(ns + text).Value.Contains(queryString.Text)

这会对你有用吗?