Avatar billede kurtspurt Nybegynder
08. november 2005 - 00:39 Der er 2 kommentarer og
1 løsning

Identificering af noder i xmlDocument

Hej

Jeg er ved at udvikle en XML editor. Der findes naturligvis masser, men det skal være lidt specielt med hensyn til hvad der må være i og sådan. Nå men fred være med det.

Det er meningen at man skal kunne se/rette filen på flere forskellige måder. Som almindelig tekst treeview, og som forskellige diagram former.

Da der er disse forskellige måder at vise tingene på har jeg tænkt mig at lave en backend classe der holder styr på hvad der ændres. Det er meningen at det skal være et xmlDocument.

Når brugeren så vælger sit ”view” (hvordan han ønsker filen vist jf. overstående muligheder) beder dette view så backendklassen om det seneste xmlDocument (altså med de rettelser der er foretaget).

Det er så meningen at view classen kun skal sende information tilbage til backenden om hvad der skal ske, og med hvad, og så modtage et nyt xmlDocument der skal vises (altså med ændringer)

Eksempel: Brugeren vælger at se xml filen som et diagram. En node vælges og der trykkes ”slet”. View klassen kalder backend.sletnode(node) (noden slettes). Efterfølgende indlæser viewklassen så det ændrede dokument fra backend klassen.

Det er ideen. Grunden til at det er skruet sådan sammen er at så er der en central enhed der står for logik og der er så kun ét sted der skal ændres. Og at der kan være x antal ”view-clienter” der kun viser og giver besked tilbage om hvad der skal.

Mit spørgsmål går ud på, hvordan identificerer jeg den node jeg har valgt i mit diagram?

Jeg har jo to kopier af samme xmlDocument og jeg har ikke rigtig været i stand til at finde en måde der allerede var indbygget i C# til at kunne identificerer hver node unikt på. Jeg er nu begyndt at gå mod at tælle alle noderne mens man løber dem igennem. Alle noder får på den måde et unikt ID jeg bare kan sende fra View til backend. Men den løsning virker umiddelbar stenalderagtig (og dog så simpel).

Jeg ved nok ikke nok om selve xmlDocument klassen til at se lyset (om end jeg har googlet hæftigt) så har du nogen ideer?
Avatar billede Slettet bruger
08. november 2005 - 05:56 #1
Noderne er ikke identificeret med andet end deres placering i dokumentet, med mindre de har et defineret id. Så med mindre de brugerne skal editerer altid er under en DTD (eller Schema) så kan du ikke være sikker på at der er noget som kan idenfiticerer en node andet end dens placering i dokumentet.
Avatar billede kurtspurt Nybegynder
16. november 2005 - 18:43 #2
tak. Lig et svar.
Avatar billede Slettet bruger
17. november 2005 - 07:20 #3
svar ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester