2015-04-02 44 views
1

我试图复制:使用的XDocument和的XElement我如何在C#中添加XAttribute和值以XML

<gcf> 
     <cbxDecOnly Type="Boolean">False</cbxDecOnly> 
     <cbxFormName Type="String" /> 
     <txtCustomerCellPhonePart2 Type="String">5236</txtCustomerCellPhonePart2> 
     <txtCustomerCellPhonePart1 Type="String">533</txtCustomerCellPhonePart1> 
     .... 
    </gcf> 

到目前为止我有:

var xdoc = new XDocument(
    new XDeclaration("1.0", "utf-8", null), 
    new XElement("gcf", 
    new XElement("cbxDecOnly", new XAttribute("Type", "Boolean")), 
    new XElement("cbxFormName", oGSFE.TextBoxClientName), 
    new XElement("txtCustomerCellPhonePart2", oGSFE.TextBoxDealSearch), 
    new XElement("txtCustomerCellPhonePart1 ", oGSFE.DropDownListFIManager) 
       ) 
      ); 

什么我不知道如何将XAttribute和值同时添加到XML元素中<cbxDecOnly Type="Boolean">False</cbxDecOnly>

回答

2

以同样的方式为您的txtCustomerCellPhonePart2 etc节点提供值 - 通过将字符串值包括为o在element's params content[]的NE:

var xdoc = new XDocument(
    new XDeclaration("1.0", "utf-8", null), 
    new XElement("gcf", 
    new XElement("cbxDecOnly", "False", new XAttribute("Type", "Boolean")), 
    new XElement("cbxFormName", oGSFE.TextBoxClientName), 
    new XElement("txtCustomerCellPhonePart2", oGSFE.TextBoxDealSearch), 
    new XElement("txtCustomerCellPhonePart1", oGSFE.DropDownListFIManager) 
    ) 
); 

content[]提供string类型的任何值将被合并到元素的值,XAttribute类型的值将创建属性和XElement类型的值将成为孩子们。

相关问题