J'obtiens les erreurs intermittentes suivantes liées à l'interrogation d'AD en utilisant DirectorySearcher.FindOne()
ou FindAll()
.
System.OverflowException: Arithmetic operation resulted in an overflow.
at System.DirectoryServices.SearchResultCollection.ResultsEnumerator.GetCurrentResult()
at System.DirectoryServices.SearchResultCollection.ResultsEnumerator.get_Current()
at System.DirectoryServices.SearchResultCollection.ResultsEnumerator.System.Collections.IEnumerator.get_Current()
Cela se produit dans une application Web et semble se produire après que l'application ait fonctionné pendant plusieurs heures.
Il s'agit d'un question documentée sur Microsoft Connect mais il semble qu'elle ait été marquée comme "non reproductible" et fermée.
La seule solution que j'ai trouvée aquí est de recycler périodiquement le pool d'applications, ce qui est une solution de rechange plutôt rude et non viable lorsque vos utilisateurs sont en train de travailler.
Quelqu'un a-t-il rencontré ce problème et, si oui, comment l'a-t-il résolu ?
J'ai essayé d'utiliser la mise en cache, mais cela ne fait que retarder l'inévitable jusqu'à ce que vous atteigniez un certain seuil en termes de nombre d'appels AD, car les gens ont signalé qu'à chaque fois que l'appel API est effectué, il y a un risque d'échec. fuites de mémoire .
Toute aide serait très appréciée.