Lo primero es identificar la excepción de forma correcta. Para ello le damos a Ver detalle...
Y una vez dentro del detalle desplegamos la Excepción para consultar la propiedad "InnerExcepcion" que es la excepcion interna y nos devuelve mas información.
La ventana donde veremos la excepion interna tiene esta apariencia:
En nuestro ejemplo estamos trabajando con sentencias linq y lo que sucede es que tardan "demasiado tiempo" por el volumen de datos manejado y como medida de protección el tiempo de duración está limitado para evitar problemas de estabilidad en el sistema.
Si queremos permitirlo debemos de establecer el siguiente comando sobre nuestro objecto del contexto (llamado en este ejemplo Micontext)
((System.Data.Entity.Infrastructure.IObjectContextAdapter) Micontext).ObjectContext.CommandTimeout
de modo que el código quedaría algo así ....
cloudEntities Micontext= new cloudEntities();
((System.Data.Entity.Infrastructure.IObjectContextAdapter) Micontext).ObjectContext.CommandTimeout = 0;
var Consulta = from g in Micontext.MiTabla
select new{g.campo1, g.campo2}
Comando extraido de la fuente:
http://stackoverflow.com/questions/11747368/set-command-timeout-in-entity-framework-4-3
No hay comentarios:
Publicar un comentario