public XmlNode GetNewsDetail() { XmlNode NewsDetailNode = xdoc.CreateElement("newsdetail"); DataTable dt = dal.GetNewDetail(Parameter.NewsID); //c.cateid,c.catename, //n.newsid,n.title,n.subtitle,n.brief,n.newscontent, //n.smallimageurl,n.author,n.newsfrom,n.videourl,n.imageurl,n.productid,n.inserttime,n.tags if (dt.Rows.Count > 0) { DataRow row = dt.Rows[0]; XmlUtility.AddNewNode(NewsDetailNode, "newsid", Convert.ToString(row["newsid"])); XmlUtility.AddNewNode(NewsDetailNode, "title", Convert.ToString(row["title"])); XmlUtility.AddNewNode(NewsDetailNode, "subtitle", Convert.ToString(row["subtitle"])); XmlUtility.AddNewNode(NewsDetailNode, "cateid", Convert.ToString(row["cateid"])); XmlUtility.AddNewNode(NewsDetailNode, "catename", Convert.ToString(row["catename"])); XmlUtility.AddCDataNode(NewsDetailNode, "brief", Convert.ToString(row["brief"])); XmlUtility.AddCDataNode(NewsDetailNode, "newscontent", Convert.ToString(row["newscontent"])); XmlUtility.AddNewNode(NewsDetailNode, "smallimageurl", NewsImageRule.GetImageUrl(Convert.ToString(row["smallimageurl"]))); XmlUtility.AddNewNode(NewsDetailNode, "author", Convert.ToString(row["author"])); XmlUtility.AddNewNode(NewsDetailNode, "newsfrom", Convert.ToString(row["newsfrom"])); XmlUtility.AddNewNode(NewsDetailNode, "videourl", NewsVideoRule.GetVideoUrl(Convert.ToString(row["videourl"]))); XmlUtility.AddNewNode(NewsDetailNode, "imageurl", NewsImageRule.GetImageUrl(Convert.ToString(row["imageurl"]))); XmlUtility.AddNewNode(NewsDetailNode, "productid", Convert.ToString(row["productid"])); XmlUtility.AddNewNode(NewsDetailNode, "inserttime", Convert.ToDateTime(row["inserttime"]).ToString("yyyy-MM-dd hh:mm:ss")); XmlUtility.AddNewNode(NewsDetailNode, "tags", Convert.ToString(row["tags"])); } return(NewsDetailNode); }
public XmlNode GetProductInfo() { XmlNode ProductInfoNode = xdoc.CreateElement("productinfo"); //产品信息节点 XmlNode ProductNode = XmlUtility.AddNewNode(ProductInfoNode, "product", null); DataTable dt = dal.GetProductInfo(Parameter.ProductID); if (dt == null || dt.Rows == null || dt.Rows.Count <= 0) { throw new PublishException("商品不存在"); } if (Convert.ToInt32(dt.Rows[0]["status"]) != 1) { throw new PublishException("商品已下架"); } DataRow row = dt.Rows[0]; XmlUtility.AddNewNode(ProductNode, "productid", Convert.ToString(row["ProductId"])); XmlUtility.AddNewNode(ProductNode, "productname", Convert.ToString(row["ProductName"])); XmlUtility.AddNewNode(ProductNode, "productcode", Convert.ToString(row["ProductCode"])); XmlUtility.AddNewNode(ProductNode, "categorypath", Convert.ToString(row["CatePath"])); XmlUtility.AddNewNode(ProductNode, "categoryid", Convert.ToString(row["CateId"])); XmlUtility.AddNewNode(ProductNode, "tradeprice", Convert.ToString(row["TradePrice"])); XmlUtility.AddNewNode(ProductNode, "merchantprice", Convert.ToString(row["MerchantPrice"])); XmlUtility.AddNewNode(ProductNode, "actualprice", Convert.ToString(Convert.ToDecimal(row["MerchantPrice"]) - Convert.ToDecimal(row["reduceprice"]))); XmlUtility.AddNewNode(ProductNode, "tradeprice", Convert.ToString(row["ReducePrice"])); XmlUtility.AddNewNode(ProductNode, "stock", Convert.ToString(row["Stock"])); XmlUtility.AddNewNode(ProductNode, "stocktip", Convert.ToString(row["stocktip"])); XmlUtility.AddNewNode(ProductNode, "smallimage", ProductMainImageRule.GetMainImageUrl(Convert.ToString(row["SmallImage"]))); XmlUtility.AddNewNode(ProductNode, "mediumimage", ProductMainImageRule.GetMainImageUrl(Convert.ToString(row["MediumImage"]))); XmlUtility.AddNewNode(ProductNode, "largeimage", ProductMainImageRule.GetMainImageUrl(Convert.ToString(row["LargeImage"]))); XmlUtility.AddNewNode(ProductNode, "keywords", Convert.ToString(row["Keywords"])); XmlUtility.AddCDataNode(ProductNode, "brief", Convert.ToString(row["Brief"])); XmlUtility.AddNewNode(ProductNode, "pageview", Convert.ToString(row["PageView"])); XmlUtility.AddNewNode(ProductNode, "inserttime", Convert.ToString(row["InsertTime"])); XmlUtility.AddNewNode(ProductNode, "changetime", Convert.ToString(row["ChangeTime"])); XmlUtility.AddNewNode(ProductNode, "score", Convert.ToString(row["Score"])); XmlUtility.AddCDataNode(ProductNode, "specifications", Convert.ToString(row["specifications"])); XmlUtility.AddCDataNode(ProductNode, "packinglist", Convert.ToString(row["packinglist"])); XmlUtility.AddCDataNode(ProductNode, "saleservice", Convert.ToString(row["aftersaleservice"])); XmlUtility.AddCDataNode(ProductNode, "offerset", Convert.ToString(row["offerset"])); XmlNode MultiImagesNode = XmlUtility.AddNewNode(ProductNode, "multiimages", null); XmlNode MainImageNode = XmlUtility.AddNewNode(MultiImagesNode, "image", null); XmlUtility.AddNewNode(MainImageNode, "smallimage", ProductMainImageRule.GetMainImageUrl(Convert.ToString(row["SmallImage"]))); XmlUtility.AddNewNode(MainImageNode, "largeimage", ProductMainImageRule.GetMainImageUrl(Convert.ToString(row["MediumImage"]))); XmlUtility.AddNewNode(MainImageNode, "originimage", ProductMainImageRule.GetMainImageUrl(Convert.ToString(row["LargeImage"]))); foreach (DataRow imageRow in dal.GetProductMultiImage(Parameter.ProductID).Rows) { XmlNode MultiImageNode = XmlUtility.AddNewNode(MultiImagesNode, "image", null); XmlUtility.AddNewNode(MultiImageNode, "smallimage", ProductMultiImageRule.GetMultiImageUrl(Convert.ToString(imageRow["smallimage"]))); XmlUtility.AddNewNode(MultiImageNode, "largeimage", ProductMultiImageRule.GetMultiImageUrl(Convert.ToString(imageRow["largeimage"]))); XmlUtility.AddNewNode(MultiImageNode, "originimage", ProductMultiImageRule.GetMultiImageUrl(Convert.ToString(imageRow["originimage"]))); } //相关产品节点 XmlNode RelatedProductNode = XmlUtility.AddNewNode(ProductInfoNode, "relatedproducts", null); DataTable RelatedProductTable = dal.GetRelatedProduct(dt.Rows[0]["relateproducts"].ToString()); if (RelatedProductTable.Rows.Count > 0) { foreach (DataRow RelatedProductRow in RelatedProductTable.Rows) { XmlNode RelatedProduct = XmlUtility.AddNewNode(RelatedProductNode, "product", null); XmlUtility.AddNewNode(RelatedProduct, "productid", Convert.ToString(RelatedProductRow["productid"])); XmlUtility.AddNewNode(RelatedProduct, "productimage", ProductMainImageRule.GetMainImageUrl(Convert.ToString(RelatedProductRow["smallimage"]))); XmlUtility.AddNewNode(RelatedProduct, "productname", Convert.ToString(RelatedProductRow["productname"])); XmlUtility.AddNewNode(RelatedProduct, "productnameshort", Convert.ToString(RelatedProductRow["productname"]).Length > 10 ? Convert.ToString(RelatedProductRow["productname"]).Substring(0, 10) + ".." : Convert.ToString(RelatedProductRow["productname"])); XmlUtility.AddNewNode(RelatedProduct, "price", Convert.ToDecimal(Convert.ToDecimal(RelatedProductRow["MerchantPrice"]) - Convert.ToDecimal(RelatedProductRow["reduceprice"])).ToString("00")); } } //关联资讯节点 XmlNode RelatedNewsNode = XmlUtility.AddNewNode(ProductInfoNode, "relatednews", null); DataTable RelatedNewsTable = dal.GetRelatedNewsInfo(Parameter.ProductID); if (RelatedNewsTable != null && RelatedNewsTable.Rows.Count > 0) { XmlNode NewsNode = XmlUtility.AddNewNode(RelatedNewsNode, "news", null); XmlUtility.AddNewNode(NewsNode, "newsid", RelatedNewsTable.Rows[0]["newsid"].ToString()); XmlUtility.AddNewNode(NewsNode, "newscontent", RelatedNewsTable.Rows[0]["newscontent"].ToString()); } return(ProductInfoNode); }