Écriture Statistiques de visualisation de fichier XML. Problèmes possibles avec la perte de nombre de données?
Question
Bonjour j'ai créé XML qui contient des codes pour les propriétés et le nombre de pages consultées pour ce code:
<?xml version="1.0" encoding="utf-8"?>
<data>
<nehnutelnost code="BSPO066P">35</nehnutelnost>
<nehnutelnost code="PMDM029P">4</nehnutelnost>
</data>
Je crois avoir trouvé une faiblesse possible avec cela, aujourd'hui tous les compteurs et tout a commencé disparurent à partir de zéro.
Ceci est le code qui vérifie l'existence de code dans un fichier XML et soit ajouter +1 ou créer de nouvelles balises XML avec 1.
int intSeenCount = 0;
XDocument xmlSeenCount = new XDocument();
xmlSeenCount = XDocument.Load(Server.MapPath(@"App_Data\lozjoCounts.xml"));
XElement xmlElement = xmlSeenCount.XPathSelectElement("data/nehnutelnost[@code = '" + strCisloZakazky + "']");
if (xmlElement == null)
{
xmlElement = (new XElement("nehnutelnost",
new XAttribute("code", strCisloZakazky),
++intSeenCount));
xmlSeenCount.Element("data").Add(xmlElement);
}
else
{
intSeenCount = (Convert.ToInt32(xmlElement.Value) + 1);
xmlElement.Value = intSeenCount.ToString();
}
xmlSeenCount.Save(Server.MapPath(@"App_Data\lozjoCounts.xml"));
Mes questions seraient:
-
est-il possible qu'il y ait la page ouverte par quelqu'un d'autre en même temps et le fichier a fini par s'écraser ou à réinitialisée en quelque sorte les données?
-
est-il une autre façon comment garder nombre si les visiteurs de la page il réinitialisés coutume à l'avenir?
Merci.
Fero
La solution
Il semble que vous avez un problème de concurrence.