2016-07-24 23 views
0

Ich verwende XML als Datenbank. Ich möchte Id für meinen Datensatz generieren, Id wird automatisch erhöht wie eine SQL Server-ID. Wie kann ich einen solchen id erzeugen?Verwenden von XML als Datenbank. Wie erzeuge ich ID für meinen Datensatz, genau wie wir in SQL automatisch erhöhen?

Meine XML-Quelle wie folgt aussehen:

data.xml

<?xml version="1.0" encoding="utf-8"?> 
<CATALOG> 
    <orderByTitleDesc /> 
    <orderByTitleDesc /> 
    <orderByTitleDesc /> 
    <orderByTitleDesc /> 
    <orderByTitleDesc /> 
    <orderByTitleDesc /> 
    <orderByTitleDesc /> 
    <orderByTitleDesc /> 

    <CD> 
    <LocationID>Test121</LocationID> 
    <ChangeValueFor>TestFor India</ChangeValueFor> 
    <Banner>India</Banner> 
    <DataEntry>Yes</DataEntry> 
    <LocalView>Yes</LocalView> 
    <Export>Yes</Export> 
    <View>Illions</View> 
    <ActiveView>Kentency</ActiveView> 
    <HelpFile>Finger</HelpFile> 
    <Location01>Chicken</Location01> 
    <Location02>India</Location02> 
    <Location03>USa</Location03> 
    <Location04>Africa</Location04> 
    <Location05>USa</Location05> 
    <Location06>Ellions</Location06> 
    <Location07>UK</Location07> 
    <Location08>States</Location08> 
    <Location09>OF</Location09> 
    <Server>31 March 2014 testing with font</Server> 
    <Server2>171.21.102.11</Server2> 
    <Server3>test2</Server3> 
    <CodeBase>Ser</CodeBase> 
    <CodeBase2>31 amrch testing for font</CodeBase2> 
    <CodeBase3>hellow</CodeBase3> 
    <ClassiscID>clsid:ACAC1200-0BBE-499A-A9E9-5F334DBC8E89</ClassiscID> 
    <ClassiscID2>clsid:ACAC1200-0BBE-499A-A9E9-5F334DBC8E89</ClassiscID2> 
    <ClassiscID3>this</ClassiscID3> 
    <Theme>class</Theme> 
    <Theme2>Theme2</Theme2> 
    <Theme3>Ser</Theme3> 
    <Theme4>InkIndia</Theme4> 
    <Theme5>InkIndia</Theme5> 
    <Theme6>VashnoDevi</Theme6> 
    </CD> 
</CATALOG> 

ich den Benutzer nicht geben kann seine eigene ID einzugeben in das Textfeld zu machen. Ich möchte, dass Benutzer einen Datensatz hinzufügen und die ID automatisch wie in SQL Server generiert wird. Wie mache ich es?

Bitte lassen Sie es mich wissen. Vielen Dank im Voraus, Leute.

+0

Welche API verwenden Sie für die Verwaltung Ihrer XML-Daten? Linq TO XML oder ADO.Net mit DataSet und DataTable. – CodeNotFound

+0

ADO .Net mit DataSet und Datentabelle –

+0

Haben Sie Ihre DataTable über Code erstellt? – CodeNotFound

Antwort

0

Sie könnten Ihrem CATALOG-Knoten ein Attribut hinzufügen, das möglicherweise count genannt wird. Wenn Sie einen neuen CD-Knoten hinzufügen (von dem ich annehme, dass es sich um den Datensatz handelt, den Sie dem CATALOG hinzufügen), könnten Sie die aktuelle Anzahl als ID für den neuen Datensatz verwenden und ihn dann erhöhen.

Sie haben dies mit einem ASP.NET-Tag markiert, was bedeutet, dass Sie möglicherweise mit dieser Lösung in ein Multithreading-Problem geraten können, je nachdem, wie Sie dies programmieren. Aber als eine grundlegende Lösung sollte dies funktionieren.

1

Wenn Sie etwas Id erstellen möchten, die einzigartig ist, können Sie

System.Guid.NewGuid().ToString(); 

verwenden Es ist eine globale eindeutige Kennung, die nicht automatisch erhöht wird, sondern dient auch als identifer auch in Multithreading-Umgebungen.