2012-02-16 13 views
16

Al editar un archivo XAML me di cuenta del error siguiente:depuración y fijación ObjectDisposedException en Visual Studio 2010

System.ObjectDisposedException occurred 
    Message=Cannot access a disposed object. 
Object name: 'FileCodeModel'. 

para depurar esta me encontré con otra instancia de Visual Estudios y "Depuración> conectar con el proceso" a la ejemplo de Visual Studio donde se mostró la excepción.

Pude detectar la excepción en las nuevas instancias que se iniciaron y que están adjuntas al proceso. Cojo la siguiente excepción:

System.ObjectDisposedException occurred 
    Message=Cannot access a disposed object. 
Object name: 'FileCodeModel'. 
    Source=Microsoft.VisualStudio.CSharp.Services.Language 
    ObjectName=FileCodeModel 
    StackTrace: 
     at Microsoft.VisualStudio.CSharp.Services.Language.CodeModel.CFileCodeModel.GetCompilation(Boolean fBlockForParses) 
     at Microsoft.VisualStudio.CSharp.Services.Language.CodeModel.CPartialTypeCollection.EnumerateParts() 
     at Microsoft.VisualStudio.CSharp.Services.Language.CodeModel.CPartialTypeCollection.get_Count() 
     at Microsoft.VisualStudio.CSharp.Services.Language.CodeModel.CSlowSnapshot..ctor(CodeElements collection) 
     at Microsoft.VisualStudio.CSharp.Services.Language.CodeModel.CPartialTypeCollection.CreateSnapshot() 
     at Microsoft.VisualStudio.CSharp.Services.Language.CodeModel.CCollectionBase.GetEnumerator() 
     at EnvDTE.CodeElements.GetEnumerator() 
     at MS.Internal.VSSymbols.SymbolProvider.GetProperties(String fullName, Boolean isTypeDefinition, Boolean useCodeModel) 
     at Microsoft.Xaml.Symbols.IXamlSymbols.GetProperties(String typeName, Boolean isTypeDefinition, Boolean useCodeModel) 
     at MS.Internal.Design.Markup.HostedType.BuildProperties(Boolean useCodeModel) 
    InnerException: 

Alguien alguna vez encuentras con esta excepción en su XAML, y ¿qué hacer para solucionarlo.

+2

Para aclarar, ¿este es un error en Visual Studio y no es un error en su código? – mydogisbox

+0

¿Puede suministrar el XAML donde sucede esto? – Phil

+1

Correcto ... sucede en VS2010. Esto hace que la edición del archivo XAML se ralentice y el VS deja de responder a veces. Hacer doble clic en la Excepción solo lleva a la parte superior del archivo, y nada más. – jmogera

Respuesta

2

¿Está ejecutando un embellecedor XAML? - He tenido algo similar con una extensión que limpia XAML.

+0

Hmm. Gracias, intentaré eso. – jmogera

1

Esto me sucedió cuando agrupé manualmente un archivo .xaml.cs y .xaml editando el archivo .csproj. Para corregir esto I:

  1. Se movió el archivo .xaml a otra carpeta.
  2. Solución abierta.
  3. Se ha eliminado .xaml del proyecto.
  4. Recreó el archivo .xaml en Visual Studio.
  5. Copié el contenido de mi .xaml original en el .xaml recién creado.

Después de seguir estos pasos ya no recibo ese mensaje de error.