本文整理汇总了C#中NBrightInfo.AddXmlNode方法的典型用法代码示例。如果您正苦于以下问题:C# NBrightInfo.AddXmlNode方法的具体用法?C# NBrightInfo.AddXmlNode怎么用?C# NBrightInfo.AddXmlNode使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NBrightInfo
的用法示例。
在下文中一共展示了NBrightInfo.AddXmlNode方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: BuildModelList
private List<NBrightInfo> BuildModelList(NBrightInfo dataItemObj,Boolean addSalePrices = false)
{
// see if we have a cart record
var xpathprefix = "";
var cartrecord = dataItemObj.GetXmlProperty("genxml/productid") != ""; // if we have a productid node, then is datarecord is a cart item
if (cartrecord) xpathprefix = "genxml/productxml/";
//build models list
var objL = new List<NBrightInfo>();
var nodList = dataItemObj.XMLDoc.SelectNodes(xpathprefix + "genxml/models/*");
if (nodList != null)
{
#region "Init"
var isDealer = CmsProviderManager.Default.IsInRole(StoreSettings.DealerRole);
#endregion
var lp = 1;
foreach (XmlNode nod in nodList)
{
// check if Deleted
var selectDeletedFlag = nod.SelectSingleNode("checkbox/chkdeleted");
if ((selectDeletedFlag == null) || selectDeletedFlag.InnerText != "True")
{
// check if hidden
var selectHiddenFlag = nod.SelectSingleNode("checkbox/chkishidden");
if ((selectHiddenFlag == null) || selectHiddenFlag.InnerText != "True")
{
// check if dealer
var selectDealerFlag = nod.SelectSingleNode("checkbox/chkdealeronly");
if (((selectDealerFlag == null) || (!isDealer && (selectDealerFlag.InnerText != "True"))) | isDealer)
{
// get modelid
var nodModelId = nod.SelectSingleNode("hidden/modelid");
var modelId = "";
if (nodModelId != null) modelId = nodModelId.InnerText;
//Build NBrightInfo class for model
var o = new NBrightInfo();
o.XMLData = nod.OuterXml;
#region "Add Lanaguge Data"
var nodLang = dataItemObj.XMLDoc.SelectSingleNode(xpathprefix + "genxml/lang/genxml/models/genxml[" + lp.ToString("") + "]");
if (nodLang != null)
{
o.AddSingleNode("lang", "", "genxml");
o.AddXmlNode(nodLang.OuterXml, "genxml", "genxml/lang");
}
#endregion
#region "Prices"
if (addSalePrices)
{
var uInfo = UserController.GetCurrentUserInfo();
if (uInfo != null)
{
o.SetXmlPropertyDouble("genxml/hidden/saleprice", "-1"); // set to -1 so unitcost is displayed (turns off saleprice)
//[TODO: convert to new promotion provider]
//var objPromoCtrl = new PromoController();
//var objPCtrl = new ProductController();
//var objM = objPCtrl.GetModel(modelId, Utils.GetCurrentCulture());
//var salePrice = objPromoCtrl.GetSalePrice(objM, uInfo);
//o.AddSingleNode("saleprice", salePrice.ToString(CultureInfo.GetCultureInfo("en-US")), "genxml/hidden");
}
}
#endregion
// product data for display in modellist
o.SetXmlProperty("genxml/lang/genxml/textbox/txtproductname", dataItemObj.GetXmlProperty(xpathprefix + "genxml/lang/genxml/textbox/txtproductname"));
o.SetXmlProperty("genxml/textbox/txtproductref", dataItemObj.GetXmlProperty(xpathprefix + "genxml/textbox/txtproductref"));
if (cartrecord)
o.SetXmlProperty("genxml/hidden/productid", dataItemObj.GetXmlProperty("genxml/productid"));
else
o.SetXmlProperty("genxml/hidden/productid", dataItemObj.ItemID.ToString(""));
objL.Add(o);
}
}
}
lp += 1;
}
}
return objL;
}
示例2: AddSingleItem
//.........这里部分代码省略.........
nodList = objInfoIn.XMLDoc.SelectNodes("genxml/checkbox/*[starts-with(name(), 'optionchk')]");
if (nodList != null)
foreach (XmlNode nod in nodList)
{
strXmlIn = "<option>";
var idx = nod.Name.Replace("optionchk", "");
var optionid = objInfoIn.GetXmlProperty("genxml/hidden/optionid" + idx);
var optionvalueid = nod.InnerText;
var optionValueInfo = productData.GetOptionValue(optionid, ""); // checkbox does not have optionvalueid
var optionInfo = productData.GetOption(optionid);
strXmlIn += "<optid>" + optionid + "</optid>";
strXmlIn += "<optvalueid>" + optionvalueid + "</optvalueid>";
itemcode += optionid + ":" + optionvalueid + "-";
strXmlIn += "<optname>" + optionInfo.GetXmlProperty("genxml/lang/genxml/textbox/txtoptiondesc") + "</optname>";
strXmlIn += "<optvalcost>" + optionValueInfo.GetXmlProperty("genxml/textbox/txtaddedcost") + "</optvalcost>";
strXmlIn += "<optvaltext>" + optionValueInfo.GetXmlProperty("genxml/lang/genxml/textbox/txtoptionvaluedesc") + "</optvaltext>";
strXmlIn += "</option>";
if (nod.InnerText.ToLower() == "true") additionalCosts += optionValueInfo.GetXmlPropertyDouble("genxml/textbox/txtaddedcost");
if (!optionDataList.ContainsKey(idx)) optionDataList.Add(idx, strXmlIn);
}
}
// we need to save the options in the same order as in product, so index works correct on the template tokens.
var strXmlOpt = "<options>";
for (int i = 1; i <= optionDataList.Count; i++)
{
if (optionDataList.ContainsKey(i.ToString("")))
{
strXmlOpt += optionDataList[i.ToString("")];
}
}
strXmlOpt += "</options>";
objInfo.AddXmlNode(strXmlOpt, "options", "genxml");
#endregion
//add additional costs from optionvalues (Add to both dealer and unit cost)
if (additionalCosts > 0)
{
objInfo.SetXmlPropertyDouble("genxml/additionalcosts", additionalCosts);
var uc = objInfo.GetXmlPropertyDouble("genxml/unitcost");
var dc = objInfo.GetXmlPropertyDouble("genxml/dealercost");
uc += additionalCosts;
if (dc > 0) dc += additionalCosts; // only calc dealer cost if it's > zero (active)
objInfo.SetXmlPropertyDouble("genxml/unitcost", uc);
objInfo.SetXmlPropertyDouble("genxml/dealercost", dc);
}
objInfo.AddSingleNode("itemcode", itemcode.TrimEnd('-'), "genxml");
// check if we have a client file upload
var clientfileuopload = objInfoIn.GetXmlProperty("genxml/textbox/optionfilelist") != "";
//replace the item if it's already in the list.
var nodItem = PurchaseInfo.XMLDoc.SelectSingleNode("genxml/items/genxml[itemcode='" + itemcode.TrimEnd('-') + "']");
if (nodItem == null || clientfileuopload)
{
#region "Client Files"
if (clientfileuopload)
{
// client has uploaded files, so save these to client upload folder and create link in cart data.
var flist = objInfoIn.GetXmlProperty("genxml/textbox/optionfilelist").TrimEnd(',');
var fprefix = objInfoIn.GetXmlProperty("genxml/hidden/optionfileprefix") + "_";
var fileXml = "<clientfiles>";
示例3: Save
/// <summary>
/// Save cart
/// </summary>
public void Save(Boolean portallevelsave = true)
{
//save cart
var strXml = "<plugin>";
var lp = 0;
foreach (var info in _pluginList)
{
info.SetXmlProperty("genxml/hidden/index", lp.ToString(""), TypeCode.String, false);
info.SetXmlProperty("genxml/textbox/ctrl", info.GetXmlProperty("genxml/textbox/ctrl").Trim().ToLower());
strXml += info.XMLData;
lp += 1;
}
strXml += "</plugin>";
var nbi = new NBrightInfo(true);
nbi.RemoveXmlNode("genxml/plugin");
nbi.AddXmlNode(strXml, "plugin", "genxml");
_templCtrl.SaveTemplate("menuplugin.xml", nbi.XMLData, portallevelsave);
NBrightBuyUtils.RemoveModCache(0);
}
示例4: GetOptionValuesById
public List<NBrightInfo> GetOptionValuesById(String optionid)
{
var l = new List<NBrightInfo>();
if (Info != null)
{
var xmlNodList = Info.XMLDoc.SelectNodes("genxml/optionvalues[@optionid='" + optionid + "']/*");
if (xmlNodList != null && xmlNodList.Count > 0)
{
var lp = 1;
foreach (XmlNode xNod in xmlNodList)
{
var obj = new NBrightInfo();
obj.XMLData = xNod.OuterXml;
var nodLang = "<genxml>" + Info.GetXmlNode("genxml/lang/genxml/optionvalues[@optionid='" + optionid + "']/genxml[" + lp + "]") + "</genxml>";
if (nodLang != "")
{
obj.SetXmlProperty("genxml/hidden/productid", Info.ItemID.ToString(""));
obj.SetXmlProperty("genxml/hidden/lang", Info.Lang.Trim());
obj.SetXmlProperty("genxml/hidden/optionid", optionid);
var selectSingleNode = xNod.SelectSingleNode("hidden/optionvalueid");
if (selectSingleNode != null) obj.SetXmlProperty("genxml/hidden/optionvalueid", selectSingleNode.InnerText);
obj.AddSingleNode("lang", "", "genxml");
obj.AddXmlNode(nodLang, "genxml", "genxml/lang");
}
obj.ParentItemId = Info.ItemID;
l.Add(obj);
lp += 1;
}
}
}
return l;
}
示例5: GetEntityList
private List<NBrightInfo> GetEntityList(String entityName)
{
var l = new List<NBrightInfo>();
if (Info != null && Info.XMLDoc != null)
{
var xmlNodList = Info.XMLDoc.SelectNodes("genxml/" + entityName + "/*");
// build generic list to bind to rpModelsLang List
if (xmlNodList != null && xmlNodList.Count > 0)
{
var lp = 1;
foreach (XmlNode xNod in xmlNodList)
{
var obj = new NBrightInfo();
obj.XMLData = xNod.OuterXml;
obj.ItemID = lp;
obj.Lang = Info.Lang;
var nodLang = "<genxml>" + Info.GetXmlNode("genxml/lang/genxml/" + entityName + "/genxml[" + lp.ToString("") + "]") + "</genxml>";
if (nodLang != "")
{
obj.AddSingleNode("lang", "", "genxml");
obj.AddXmlNode(nodLang, "genxml", "genxml/lang");
}
obj.ParentItemId = Info.ItemID;
l.Add(obj);
lp += 1;
}
}
}
return l;
}
示例6: Save
/// <summary>
/// Save cookie to client
/// </summary>
public void Save()
{
#region "Get temp filename"
var tempfilename = "";
if (_storageType == DataStorageType.SessionMemory)
{
if (HttpContext.Current.Session[_cookieName + "tempname"] != null) tempfilename = (String) HttpContext.Current.Session[_cookieName + "tempname"];
}
else
{
tempfilename = Cookie.GetCookieValue(_portalId, _cookieName, "tempname", "");
}
if (tempfilename == "") tempfilename = Utils.GetUniqueKey(12);
if (_storageType == DataStorageType.SessionMemory)
{
HttpContext.Current.Session[_cookieName + "tempname"] = tempfilename;
}
else
{
Cookie.SetCookieValue(_portalId, _cookieName, "tempname", tempfilename, 1, "");
}
#endregion
var nbi = new NBrightInfo(true);
if (XmlData != "") nbi.XMLData = XmlData;
nbi.SetXmlProperty("genxml/Criteria", _criteria);
nbi.SetXmlProperty("genxml/PageModuleId", PageModuleId);
nbi.SetXmlProperty("genxml/PageNumber", PageNumber);
nbi.SetXmlProperty("genxml/PageName", PageName);
nbi.SetXmlProperty("genxml/PageSize", PageSize);
nbi.SetXmlProperty("genxml/OrderBy", OrderBy);
nbi.SetXmlProperty("genxml/CategoryId", CategoryId.ToString("D"));
nbi.SetXmlProperty("genxml/RecordCount", RecordCount);
nbi.SetXmlProperty("genxml/Mode", Mode);
nbi.SetXmlProperty("genxml/OrderByIdx", OrderByIdx);
if (!String.IsNullOrEmpty(SearchFormData))
{
nbi.RemoveXmlNode("genxml/SearchFormData");
nbi.SetXmlProperty("genxml/SearchFormData", "",TypeCode.String,false);
nbi.AddXmlNode(SearchFormData,"genxml", "genxml/SearchFormData");
}
var filePath = StoreSettings.Current.FolderTempMapPath + "\\" + tempfilename;
Utils.SaveFile(filePath, nbi.XMLData);
Exists = true;
}
示例7: UpdateLangNodeFields
private static NBrightInfo UpdateLangNodeFields(String xmlname, NBrightInfo baseInfo, NBrightInfo dlang)
{
var nodList3I = baseInfo.XMLDoc.SelectNodes("genxml/" + xmlname + "/genxml");
if (nodList3I != null)
{
for (int i = 1; i <= nodList3I.Count; i++)
{
var nodList3 = baseInfo.XMLDoc.SelectNodes("genxml/" + xmlname + "/genxml[" + i + "]/textbox/*");
if (nodList3 != null)
{
foreach (XmlNode nod in nodList3)
{
if (nod.InnerText.Trim() != "")
{
if (dlang.GetXmlProperty("genxml/" + xmlname + "/genxml[" + i + "]/textbox/" + nod.Name) == "")
{
if (dlang.XMLDoc.SelectSingleNode("genxml/" + xmlname + "/genxml[" + i + "]") == null)
{
var baseXml = baseInfo.XMLDoc.SelectSingleNode("genxml/" + xmlname + "/genxml[" + i + "]");
if (baseXml != null)
{
if (dlang.XMLDoc.SelectSingleNode("genxml/" + xmlname) == null)
{
dlang.AddSingleNode(xmlname, "", "genxml");
}
dlang.AddXmlNode(baseXml.OuterXml, "genxml", "genxml/" + xmlname);
}
}
dlang.SetXmlProperty("genxml/" + xmlname + "/genxml[" + i + "]/textbox/" + nod.Name, nod.InnerText);
}
}
}
}
}
}
return dlang;
}