---
title: "bra xml lösning?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/70785-bra-xml-lösning"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "DavidB"
published: "2003-03-11T21:35:27.000Z"
updated: "2003-03-17T14:02:04.000Z"
replies: 8
views: 381
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/70785-bra-xml-lösning"
---

# bra xml lösning?

## #1 — DavidB, 2003-03-11T21:35Z

Har skrivit ihop följande kod, det jag undrar nu är hur bra den är när det gäller prestanda. Eftersom den hämtar texter från en xml fil så kan det bli så att den körs ganska så många gånger även på samma sida:

```
string _lang;
string _word;

_lang = "en";
_word = "hi";

XmlTextReader reader = new XmlTextReader(Server.MapPath("text.xml"));

while (reader.Read()) {
	if(reader.NodeType == XmlNodeType.Element){
		if(reader.Name == "text"){
			reader.MoveToNextAttribute();
			if(reader.Name == "language" && reader.Value == _lang){
				reader.MoveToNextAttribute();
					if(reader.Name == "word" && reader.Value == _word){
						reader.MoveToNextAttribute();
						Response.Write("" + reader.Value + "<br>");
					}
			}
		}
	}
}
reader.Close();
```

text.xml:

```
<?xml version='1.0'?>
<sitetext>
  <text language="en" word="help" text="blablabla"/>
  <text language="se" word="help" text="blablablabalbal"/>
  <text language="en" word="welcome" text="sdasfsafsaf"/>
  <text language="se" word="welcome" text="saddas"/>
</sitetext>
```

Finns det något bättre alternativ så att det tar mindre resurser? Eller om det går att göra några ändringar så det går snabbare?

Permalänk: https://www.webforum.nu/p/70785

## #2 — niko, 2003-03-11T22:09Z

Om xml-filen ändras betydligt mer sällan än den läses så borde det vara rätt smart att cacha för att slippa diskläsningarna. Du kan antingen lägga koden i en ascx-fil och ange en "OutPutCache Duration" eller ännu smartare: använda Cache-objektet och sätta en dependency så att omcachning sker när filen ändras.

<http://www.fawcette.com/Archives/premier/mgznarch/vbpj/2001/11nov01/an0111/an0111-1.asp>

Permalänk: https://www.webforum.nu/p/975909

## #3 — DavidB, 2003-03-11T22:22Z

får testa det

men borde inte det ta upp ganska mycket minne på servern? om xml filen innehåller en väldigt massa text?

Permalänk: https://www.webforum.nu/p/975929

## #4 — niko, 2003-03-11T22:33Z

> men borde inte det ta upp ganska mycket minne på servern? om xml filen innehåller en väldigt massa text?

Jo, naturligtvis så tar det i princip lika mycket virtuellt minne som filen är stor. Men det är ju den eviga avvägningen man måste göra. Vill man få snabbare exekvering genom att minska läsningar mot långsamma media (diskar tex) så går det åt mer minne. Men om filen är några kb stor och accessas väldigt ofta så .. ?

Permalänk: https://www.webforum.nu/p/975938

## #5 — DavidB, 2003-03-15T10:52Z

kom och tänka på en sak till:

ska jag lägga all text i en xml fil eller skall jag ha en fil för varje språk?

Permalänk: https://www.webforum.nu/p/978253

## #6 — spango, 2003-03-15T14:02Z

Jag röstar för en fil för varje språk... när du kommer upp i 34 språk (vilket naturligtvis kommer att ske :OO ;) ) är det inte så kul att ha allt samlat i samma fil. Dessutom blir inläsningen mindre tungrodd...

**Tillägg**

> **DavidB skrev:**
>
> Eftersom den hämtar texter från en xml fil så kan det bli så att den körs ganska så många gånger även på samma sida:

Graaaah!  :o \*host\* Vore det inte mycket bättre att läsa in filen till en datastruktur (någon slags Map eller vad de nu heter) som du sedan plockar fram orden ur? Att läsa filen en gång för varje fras man ska ha fram låter inte det minsta effektivt.

Permalänk: https://www.webforum.nu/p/978327

## #7 — DavidB, 2003-03-15T14:25Z

tycker inte heller det är så effektivt, men hur gör man det där du skrev då?  :q

Permalänk: https://www.webforum.nu/p/978339

## #8 — spango, 2003-03-15T22:06Z

Kika på [IDictionary](http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemCollectionsIDictionaryClassTopic.asp)...

Permalänk: https://www.webforum.nu/p/981518

## #9 — DavidB, 2003-03-17T14:02Z

säger inte mig så jättemycket men ska sätta mig och försöka :)

Permalänk: https://www.webforum.nu/p/982403

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/70785-bra-xml-lösning
