要在您提供的 XML 片段中搜索您想要的内容,您需要以下 XPath 表达式:
/APIS/API/field[@Username='username1' and @UserPassword='password1']
如果用户名和密码匹配,这将返回一些东西 - 如果不匹配,则不返回。
当然,XPath 表达式只是一个字符串 - 例如,您可以使用输入到表单字段中的值动态构建它。
如果您说出您所处的语言/环境,那么此处发布的代码示例可能会更加具体。
这是在 C# 中执行此操作的一种方法(VB.NET 类似):
// make sure the following line is included in your class
using System.Xml;
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load("your XML string or file");
string xpath = "/APIS/API/field[@Username='{0}' and @UserPassword='{1}']";
string username = "username1";
string password = "password1";
xpath = String.Format(xpath, username, password);
XmlNode userNode = xmldoc.SelectSingleNode(xpath);
if (userNode != null)
{
// found something with given user name and password
}
else
{
// username or password incorrect
}
请注意,用户名和密码都不能包含单引号,否则上面的示例将失败。这是有关此特性的一些信息。
Microsoft 还提供了一个 How-To:如何:使用 System.Xml.XmlDocument 类在 Visual C# .NET 中执行 XPath 查询