Bonjour,
J'utilise un WebService LINQ to SQL qui effectue simplement une requete dans une base SQL Server.
L'exception récupérée est : "The underlying connection was closed: An unexpected error occurred on a receive"
Tout fonctionne lorsque la requete retourne peu d'enregistrements, et dans le cas ou elle retourne environ 5000 enregistrements, j'ai mon exception...
Voilà mon code côté WebService :
Code :
- public IList<MON_TYPE> getRetourRequete(param1, param2...)
- {
- string[] strListCustomerCode = param1.Split(';');
- List<MON_TYPE> listMonType = null;
- try
- {
- using (monDataContext context = new monDataContext())
- {
- foreach (string strCustomCode in strListCustomerCode)
- {
- var result = from wo in context.MON_TYPE
- where wo.monChamp1 == strCustomCode
- where wo.monChamp1.Contains(param2)
- where wo.monChamp1.Contains(param3)....
- select wo;
-
- context.ObjectTrackingEnabled = false;
- if ((result.ToList<MON_TYPE>() != null) &&
- (result.ToList<MON_TYPE>().Count > 0))
- {
- if (listMonType == null)
- {
- listMonType = new List<MON_TYPE>();
- listMonType.AddRange(result.ToList<MON_TYPE>());
- }
- else
- {
- listMonType.AddRange(result.ToList<MON_TYPE>());
- }
- }
- }
- }
- }
- catch (Exception ex)
- {
- string mess = ex.Message;
- listMonType = null;
- }
- return listMonType;
- }
- }
|
Dans un 1er temps le param1 est splitté car il contient plusieurs valeurs pour le même champ. Ma requete est executé plusieurs fois avec ces valeurs et les résultats sont concaténés (c'est un "OU" à ma sauce)
côté consommateur du service :
Code :
- try
- {
- Service monService = new Service();
- IList<MON_TYPE> maList = monService.getRetourRequete(param1, param2...);
- // c'est après ce code que le programme passe en exception coté client uniquement pas d'exception sur le service
- }
- catch (Exception ex)
- {
- // exception récupérée (The underlying connection was closed...)
- string message = ex.Message
- }
|
J'ai cherché tout hier, je ne trouve pas d'où ca peut venir, si quelqu'un a une idée ? Merci !
Message édité par katopex le 18-05-2010 à 14:15:37