2016-02-09 2 views
-3

Ниже мой исходный xml. Я хочу написать для него класс C#, а затем десериализую его. поэтому я могу использовать объект C# и сохранять его в базе данных. History-: я делал json deserialize, который отлично работает, но я столкнулся с проблемой в моем узле xml 'LastChangeId', который может быть частью этого xml, когда-то может и не быть вообще, или когда-то для него есть несколько узлов. эта проблема вошла в мой синтаксический разбор json. и я должен вернуться к xml. любая помощь будет заметна.Что будет для класса C# для моего xml и как его десериализировать

<FundingSource > 
    <ClientAccountPaySourceId>16</ClientAccountPaySourceId> 
    <ClientAccountId>67</ClientAccountId> 
    <ClientAccountName>Default Account</ClientAccountName> 
    <PrimaryPartyId>62</PrimaryPartyId> 
    <PrimaryRoleId>1290</PrimaryRoleId> 
    <TenderTypeId>3</TenderTypeId> 
    <TenderTypeName>Credit Card</TenderTypeName> 
    <TenderInterfaceName>Credit Card</TenderInterfaceName> 
    <CreditCareTypeName>Visa</CreditCareTypeName> 
    <ChargeAccountMask>1111</ChargeAccountMask> 
    <ExpirationDate>04/20</ExpirationDate> 
    <BillingAccountName>Joe Montana</BillingAccountName> 
    <BillingStreet>1235 Main St</BillingStreet> 
    <BillingCity>Pleasanton</BillingCity> 
    <BillingPostalCode>94588</BillingPostalCode> 
    <BillingCountry>US</BillingCountry> 
    <BillingTelephone>1231234567</BillingTelephone> 
    <DisplayOrder>1</DisplayOrder> 
    <UseForRecurring>true</UseForRecurring> 
    <UseForNonRecurring>true</UseForNonRecurring> 
    <IsActive>true</IsActive> 
    <Invalid>false</Invalid> 
    <ChargeAccountToken>VC84632147254611111111</ChargeAccountToken> 
    <IsExternal>false</IsExternal> 
    <LastChangeId > 
    <ClientAccountPaySourceId>16</ClientAccountPaySourceId> 
    <TimeUtc>2016-02-02 01:04:16</TimeUtc> 
    <TimeLocal>2016-02-01 17:04:16</TimeLocal> 
    <UserName>Josh.Lyon</UserName> 
    <PartyId>20</PartyId> 
    <RoleId>1160</RoleId> 
    <BusinessUnitCode>2</BusinessUnitCode> 
    <EndpointKey>default</EndpointKey> 
    </LastChangeId> 
</FundingSource> 
+1

Возможный дубликат [Как сериализации/десериализации простых классов в XML и обратно] (http://stackoverflow.com/questions/3356976/how-to-serialize-deserialize-simple-classes-to-xml-and-back) – Matt

ответ

0
public class FundingSource { 
public int ClientAccountPaySource {get; set;} 
public int ClientAccountId {get; set;} 
public string ClientAccountName {get; set;} 
... 
} 
//Use it like so: 
System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(p.GetType()); 

x.Serialize(Console.Out, new FundingSource() { ClientAccountPaySource=1, ClientAccountId=100, ClientAccountName="Name"}); 

Для больше, см MSDN Page on XML Serialization или ряд связанных с этим вопросов like this one

+0

Упорядочить пояснение? Хотя это простой вопрос, на который был дан ответ, я предоставил информацию, которая была необходима, и ссылку на страницу MSDN и связанный с ней вопрос – Matt

Смежные вопросы