2009-02-25 9 views
4

Je ne sais pas pourquoi j'obtiens toujours une exception OutOfMemory. J'utilise ASP.NET MVC avec LINQ to SQL. Voici quelques-unes de la pile trace:Exception LINQ to SQL: System.OutOfMemoryException

[OutOfMemoryException. Exception de type 'System.OutOfMemoryException' a été jeté ]
System.Runtime.CompilerServices.RuntimeHelpers._CompileMethod (méthode IntPtr ) +0
System.Reflection.Emit.DynamicMethod.CreateDelegate (type DelegateType) 7652553
System.Data.Linq.SqlClient.ObjectReaderCompiler.Compile (SqlExpression expression , type elementType) +442
System.Data.Linq.SqlClient.SqlProvid er.GetReaderFactory (SqlNode nœud , type elemType) 100
System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute (Expression requête) 253
System.Data.Linq .Tableau 1 1.System.Linq.IQueryProvider.Execute(Expression expression) +49
System.Linq.Queryable.Single(IQueryable
source prédicat Expression`1) 301
de WorkGrabber.Web.Models.WorkGrabberDataContext.GetJob (Int32 id) 233
WorkGrabber.Web.Controllers.BidsController.New (Int32 jobId) 19

+0

Cela peut arriver sans MVC. Nous avons une application qui produit la même erreur. Nous l'avons vu dans un environnement hébergé. Ca arrive très rarement, on ne peut pas l'isoler, on ne peut pas le reproduire. – gerleim

Répondre

0

Quelle est votre expression? Le problème semble provenir de cette ligne:

System.Reflection.Emit.DynamicMethod.CreateDelegate(Type delegateType) +7652553 

Ce décalage semble assez étrange. Je peux difficilement croire qu'une méthode dynamique normale aura un corps de 7.5MB.

+0

WorkGrabber.Web.Models.WorkGrabberDataContext.GetJob (id Int32) C'est juste un datacontext.Jobs.Single (j => j.JobID = id) Serait-ce des LoadOptions ou quelque chose? Où avez-vous obtenu le corps de 7,5 Mo? –

+0

À partir de la ligne de la pile d'appels, il est indiqué que l'erreur se produit lors de l'offset +7652553 à partir du début de l'appel de méthode. –