我正在开发一个使用店内购买的 Windows 应用商店应用程序。进行购买时,会返回一些 XML。我正在尝试查看用户是否成功购买了该产品。我知道我可以用 LINQ 确定这一点,但我不确定如何编写我的 LINQ 查询。
private bool WasProductPurchasedFromStore(string productName)
{
string data = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Receipt Version=\"1.0\" ReceiptDate=\"2012-11-24T12:22:20Z\" CertificateId=\"\" ReceiptDeviceId=\"aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\"><ProductReceipt Id=\"bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb\" AppId=\"MyNamespace.MyApp_t7396xywk1mky\" ProductId=\"Upgrade\" PurchaseDate=\"2012-11-24T12:22:20Z\" ProductType=\"Durable\" /></Receipt>";
XDocument xml = XDocument.Parse(data);
// Return true if the productName is found in the XML.
// THIS IS WHERE I'M STUCK
var result = from receipt in xml
select receipt;
// Return false if the user did not make the purchase
return false;
}
如何查询我的 xml 以查看是否存在具有与 in 中的值匹配的属性值的ProductReceipt
元素?ProductId
productName
感谢您的帮助!