2009-12-17 5 views
0

Dans le cadre d'une tentative de réparation dans un système hérité, j'ai mis en place une méthode permettant d'appeler une procédure stockée dans notre base de données SQLServer. Rien dans cette configuration n'est idéal, mais c'est ce que je dois travailler. Les deux options que j'ai sont d'utiliser un SqlDataReader pour lire le flux en tant que lignes de la base de données, ou pour recevoir la réponse sous la forme d'un morceau de xml. Même si xml n'a jamais vraiment résolu rien (insérer un clin d'oeil mignon ici), je penche pour choisir cette option et utiliser XLinq pour créer mes objets métier à partir des données, simplement parce que cette solution ressemblerait moins à un vomi à l'écran. ;)Performances XLinq vs SqlDataReader

La chose qui me préoccupe, cependant, est d'introduire des problèmes de performance en adoptant cette approche. Y a-t-il quelqu'un avec de l'expérience dans ce domaine qui peut m'aider? Est-ce que Xlinq est susceptible de ralentir encore plus mon code déjà lent?

Répondre

2

Performance sage, SqlDataReader est le bon choix.

Esteban Garcia a fait quelques tests comme l'a fait Ben Hodson. Les résultats sont assez concluants, bien qu'ils n'incluent pas XLinq.

+0

Ok, merci. Des conseils de lecture pour sauvegarder cela? –

1

Vous pouvez également utiliser Linq To Datasets. De cette façon, vous pouvez utiliser l'API Linq, et vous n'avez pas à modifier votre STP. Néanmoins, en termes de performances, cela est inférieur à SqlDataReader.