将自定义属性添加到PDFService类Nopcommerce 3.0

时间:2014-01-13 17:11:16

标签: c# xml asp.net-mvc-4 nopcommerce

我有一个自定义属性,我想在nopcommerce中添加到PDF发票,

我已经运行了有断点的网站,并且可以确认我需要传递的变量是:

"的docId"

我已将此代码添加到PrintOrderToPdf方法下的PdfService类中,

List<string> values = _productAttributeParser.ParseValues(item.AttributesXml, punchOutDocumentId);

String docID = String.Empty;
if(values.Count > 0)
{
     docID = values.First();
}
cell = new PdfPCell(new Phrase(docID));
cell.HorizontalAlignment = Element.ALIGN_CENTER;
productsTable.AddCell(cell);

从查看我发现的AttributesXML对象:

<?xml version="1.0" encoding="utf-8"?><Orders Version="3.00"><Order>

<AttributesXml>&lt;Attributes&gt;&lt;ProductVariantAttribute ID="2147483646"&gt;&lt;ProductVariantAttributeValue&gt;&lt;Value&gt;e8bb4282-43de-4baf-aece-5baed6163e03&lt;/Value&gt;&lt;/ProductVariantAttributeValue&gt;&lt;/ProductVariantAttribute&gt;&lt;ProductVariantAttribute ID="2147483645"&gt;&lt;ProductVariantAttributeValue&gt;&lt;Value&gt;D-6DB2F2E5&lt;/Value&gt;&lt;/ProductVariantAttributeValue&gt;&lt;/ProductVariantAttribute&gt;&lt;/Attributes&gt;</AttributesXml>

我需要显示id为的属性:

2147483645 - 它以D -

开头

1 个答案:

答案 0 :(得分:2)

您只需要检索您的属性。

int attributeId = 2147483645;
List<string> values = _productAttributeParser.ParseValues(item.AttributesXml, attributeId);

String docID = String.Empty;
if(values.Count > 0)
{
     docID = values.First();
}
cell = new PdfPCell(new Phrase(docID));
cell.HorizontalAlignment = Element.ALIGN_CENTER;
productsTable.AddCell(cell);