J'ai un processus qui (la nuit) prend un gros morceau de données sous la forme d'une requête linq2sql et le vide en XML (sitemaps). Mon problème est que je suis parfois obtenir:"La transaction (ID de processus 56) était bloquée sur les ressources de verrouillage avec une autre"
System.Data.SqlClient.SqlException:
transaction (processus ID XX) a été bloquée sur les ressources de verrouillage avec un autre processus et a été choisie comme la victime de blocage . Réexécutez la transaction.
Cette requête est en lecture seule et n'est pas nécessaire pour être "transaction safe". Puis-je écrire un processus comme celui-ci pour éviter l'exception?
EDIT:
Fondamentalement, le code est:
foreach(Record record in MyDataContext.FatTableWithRecords) //about 50' records
{
//produce some XML (dumped to file when max 50' records or 10MB large)
}