La question est donc la suivante: j'ai un pour chaque boucle que j'utilise actuellement pour récupérer des données à partir d'une requête d'un fichier XML qui est ensuite placé dans une chaîne; Comme:
foreach (var value in dateQuery)
date = value.Element("HistoryCreation").Value;
11 Réponses :
date = dateQuery.Single().Element("HistoryCreation").Value;
Vous pouvez utiliser:
dateQuery.First().Element("HistoryCreation").Value
Si vous utilisez .NET 3.5 ou plus récent, vous pouvez utiliser la méthode d'extension alors si votre hypothèse ne sera qu'un la valeur à dateQuery 'est fausse, il lancera une exception. p> p> énumérable.single code>:
Tster: Je l'ai supprimé - il est clair qu'il utilise 3.5 de l'utilisation de var.
Vous ne pouvez pas simplement accéder au premier index de dateQuery code>?
@tster - accepté, mais ce n'est pas impliqué dans la question.
Vous auriez besoin de vérifier que DateQuery a au moins un élément, sinon vous obtiendrez une exception d'index hors de portée.
Essayez Enumérable.Single ou Enumérable.Singleordfault :
date = dateQuery.Single().Element("HistoryCreation").Value;
dateQuery.First().Element("HistoryCreation").Value
if you are able to use LINQ
Bon sang, vous devez vraiment être rapide sur le tirage ici!
Je suis d'accord, ces réponses étaient toutes correctes; et ils sont venus si vite. : /
Vous pouvez essayer que vous pourriez utiliser .First () ou .Single (), mais s'il n'y a rien dans DataQuery une exception sera lancée. P> P> P> >
La réponse de Mark est de loin le meilleur, mais je mets le mien pour illustrer la boucle de foresach.
Cela devrait faire l'astuce:
emmanual, si vous savez que vous n'avez besoin que de faire quelque chose une fois, vous ne devriez pas utiliser une boucle. P>
résumer:
Notez qu'il existe également des versions de ceux-ci qui prennent des prédicats, de sorte que vous puissiez abréger p> à p>
Je ne peux pas croire que cela a fallu si longtemps (3 minutes) pour répondre à cette question.
Il faut une minute pour des questions à apparaître parfois. Surtout sur la première page (pas lorsque vous cliquez sur "Questions")