private string findProduct(HttpContext context) { int num = 0; int num2 = 0; num = Convert.ToInt32(context.Request["PageSize"]); num2 = Convert.ToInt32(context.Request["Page"]); string text = null; string productCode = null; string keywords = null; ProductSaleStatus saleStatus = ProductSaleStatus.All; if (!string.IsNullOrWhiteSpace(context.Request["GoodsType"])) { text = context.Request["GoodsType"]; if (text.Equals("Onsale")) { saleStatus = ProductSaleStatus.OnSale; } else if (text.Equals("InStock")) { saleStatus = ProductSaleStatus.OnStock; } } if (!string.IsNullOrWhiteSpace(context.Request["OuterID"])) { productCode = context.Request["OuterID"]; } else if (!string.IsNullOrWhiteSpace(context.Request["GoodsName"])) { keywords = context.Request["GoodsName"]; } ProductQuery productQuery = new ProductQuery { Keywords = keywords, ProductCode = productCode, PageSize = num, PageIndex = num2, SortOrder = SortAction.Desc, SortBy = "DisplaySequence", SaleStatus = saleStatus, SupplierId = 0 }; Globals.EntityCoding(productQuery, true); DbQueryResult products = ProductHelper.GetProducts(productQuery); StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); stringBuilder.Append("<Goods>"); stringBuilder.Append($"<TotalCount>{products.TotalRecords}</TotalCount>"); stringBuilder.Append("<Result>1</Result>"); stringBuilder.Append("<Cause></Cause>"); DataTable data = products.Data; for (int i = 0; i < data.Rows.Count; i++) { stringBuilder.Append("<Ware>"); int num3 = Convert.ToInt32(data.Rows[i]["ProductId"]); int num4 = Convert.ToInt32(data.Rows[i]["HasSKU"]); stringBuilder.Append($"<ItemID>{num3}</ItemID>"); stringBuilder.Append(string.Format("<ItemName><![CDATA[{0}]]></ItemName>", data.Rows[i]["ProductName"])); stringBuilder.Append(string.Format("<OuterID><![CDATA[{0}]]></OuterID>", data.Rows[i]["ProductCode"])); stringBuilder.Append(string.Format("<Price>{0}</Price>", data.Rows[i]["SalePrice"])); stringBuilder.Append(string.Format("<Num>{0}</Num>", data.Rows[i]["Stock"])); stringBuilder.Append($"<IsSku>{num4}</IsSku>"); stringBuilder.Append("<Items>"); if (num4 > 0) { DataTable dataTable = ProductBrowser.ApiGetSkusByProductId(num3); for (int j = 0; j < dataTable.Rows.Count; j++) { stringBuilder.Append("<Item>"); stringBuilder.Append(string.Format("<Unit>{0}</Unit>", dataTable.Rows[j]["valuestr"])); stringBuilder.Append(string.Format("<SkuID>{0}</SkuID>", dataTable.Rows[j]["skuId"])); stringBuilder.Append(string.Format("<Num>{0}</Num>", dataTable.Rows[j]["Stock"])); stringBuilder.Append(string.Format("<SkuOuterID>{0}</SkuOuterID>", dataTable.Rows[j]["SKU"])); stringBuilder.Append(string.Format("<SkuPrice>{0}</SkuPrice>", dataTable.Rows[j]["SalePrice"])); stringBuilder.Append("</Item>"); } } stringBuilder.Append("</Items>"); stringBuilder.Append("</Ware>"); } stringBuilder.Append("</Goods>"); return(stringBuilder.ToString()); }