Je souhaite lire beaucoup de données (une seule colonne nvarchar (max)) à partir de SQL Server 2005 et les désérialiser vers un objet. Nous utilisons actuellement ce qui suit, mais ce n'est pas assez rapide, y a-t-il un moyen meilleur/efficace de le faire?Lire les données UTF8 (XML) de SQL Server 2005 de la manière la plus efficace
using(MemoryStream stream = Encoding.UTF8.GetBytes((string)cmd.ExecuteScalar()))
{
XmlTextReader xmlReader;
DataContractSerializer deserializer;
deserializer = new DataContractSerializer(typeToDeserialize);
xmlReader = new XmlTextReader(stream);
return deserializer.ReadObject(xmlReader);
}
J'ai essayé als de le faire avec un SqlDataReader et GetBytes mais je reçois des exceptions.
Merci d'avance.
John thanx Je vais essayer ça. Je vais vous le faire savoir – JSC
Étrangement le problème est la latence d'un résultat de requête au framework .NET (La requête a une durée de 0ms et il n'y a pas de latence réseau). Sur notre serveur (VMware), je reçois en moyenne 400 recs p/s à un seul thread (2K xml) avec un taux de processeur de 5% maximum. Ceci est fait avec une boucle vide while while. – JSC