Solucionar problemas de extensiones de características
Puede crear sus propias extensiones de características, como reglas de análisis de código personalizadas, condiciones de pruebas unitarias de base de datos, generadores de datos, refactorización de tipos, colaboradores de compilación y colaboradores de implementación. Al instalar estas extensiones de características, pueden surgir problemas que impidan la carga correcta de la extensión. En este tema se describen los problemas más frecuentes y los pasos que puede seguir para resolverlos. Para obtener más información sobre cómo instalar y registrar extensiones de características, vea Cómo: Registrar y administrar las extensiones de características.
Primeros pasos cuando una extensión de características no se carga
Después de instalar y registrar una extensión de características, debe reiniciar Visual Studio. El primer paso que debe seguir después de reiniciar Visual Studio es mostrar la Lista de errores. Si no se pudieron cargar una o más extensiones, podrían aparecer errores en la Lista de errores. En el menú Ver, haga clic en Lista de errores. Si aparece un error como el siguiente, la extensión no se cargó correctamente:
Failed to load extension MyBuildContributor.ModelStatisticsReport. Exception message: Could not load type 'MyBuildContributor.ModelStatisticsReport' from assembly 'MyBuildContributor, Version 1.0.0.0, Culture=neutral, PublicKeyToken=34fdfd7e8ae7c7a8'.
En algunas situaciones, por ejemplo si no se encontró ningún archivo .extensions.xml, la extensión no se cargará, pero no aparecerá ningún error.
Diagnosticar por qué no se carga la extensión
Entre las razones por las que la extensión no se puede cargar se incluyen las siguientes:
El archivo de extensión contiene uno o más errores
El ensamblado de la extensión no está firmado
No se encontró el archivo extensions.xml
No se encontró el ensamblado de la extensión
El código de la extensión no extiende las clases correctas
Las clases o los miembros de la extensión no tienen los atributos correctos
El archivo de extensión contiene uno o más errores
La razón más frecuente por la que una extensión no se carga es que tiene uno o más de los siguientes errores en el archivo Extensions.XML:
Nombre de tipo incorrecto
Nombre de ensamblado incorrecto
Número de versión incorrecto
Token de clave pública incorrecto
Para obtener información sobre cómo crear un archivo extensions.xml, vea Cómo: Registrar y administrar las extensiones de características.
El ensamblado de la extensión no está firmado
Si el ensamblado de la extensión no está firmado, Visual Studio no puede cargarlo. Para firmar un ensamblado de extensión, siga estos pasos:
Para firmar y compilar el ensamblado
Abra la solución que contiene el proyecto de extensión.
En el menú Proyecto, haga clic en Propiedades de MiProyectoDeExtensión, donde MiProyectoDeExtensión es el nombre del proyecto que contiene la extensión de características que desea firmar.
Haga clic en la ficha Firma.
Haga clic en Firmar el ensamblado.
En Elija un archivo de clave de nombre seguro, haga clic en <Nuevo>.
En el cuadro de diálogo Crear clave de nombre seguro, en Nombre del archivo de clave, escriba MyRefKey.
(opcional) Puede especificar una contraseña para el archivo de clave de nombre seguro.
Haga clic en Aceptar.
En el menú Archivo, haga clic en Guardar todo.
En el menú Generar, haga clic en Generar solución.
Después, debe instalar y registrar el ensamblado para que se cargue al implementar proyectos de base de datos.
No se encontró el archivo Extensions.XML
Si no proporcionó un archivo XML para registrar la extensión con Visual Studio, no se cargará la extensión. Normalmente, copiará el archivo MiEnsamblado.Extensions.XML a la carpeta %Program Files%\Microsoft Visual Studio 10.0\VSTSDB\Extensions\MyExtensions, donde MiEnsamblado es el nombre de la extensión.
Nota
Se recomienda no copiar directamente los archivos XML a la carpeta [Archivos de programa]\Microsoft Visual Studio 10.0\VSTSDB\Extensions. Si usa una subcarpeta en su lugar, evitará cambios accidentales en los demás archivos proporcionados con Visual Studio.
Para obtener más información sobre cómo crear un archivo Extensions.XML, vea Cómo: Registrar y administrar las extensiones de características.
No se encontró el ensamblado de la extensión
Si no copió el ensamblado de la extensión a la carpeta Extensions, no se cargará la extensión. Normalmente, copiará los archivos MiEnsamblado.dll y MiEnsamblado.pdb a la carpeta %Program Files%\Microsoft Visual Studio 10.0\VSTSDB\Extensions\MyExtensions, donde MiEnsamblado es el nombre de la extensión.
Nota
Se recomienda no copiar directamente los archivos XML a la carpeta [Archivos de programa]\Microsoft Visual Studio 10.0\VSTSDB\Extensions. Si usa una subcarpeta en su lugar, evitará cambios accidentales en los demás archivos proporcionados con Visual Studio Premium.
El código de la extensión no extiende las clases correctas
Para cada tipo de extensión de características, la clase primaria extiende una clase base concreta. Si no hereda de la clase base correcta, la extensión no funcionará correctamente. Para obtener más información, vea el tutorial correspondiente.
Las clases o los miembros de la extensión no tienen los atributos correctos
Para cada tipo de extensión de características, la clase debe tener un atributo que declara el tipo de proveedores de esquema de base de datos con los que la extensión es compatible. Además, algunas extensiones necesitan atributos adicionales en uno o más de los métodos de clase. Para obtener más información, vea el tutorial correspondiente.
Vea también
Conceptos
Crear tipos de refactorización de base de datos personalizados o destinos
Crear y registrar reglas adicionales para analizar el código de base de datos
Generar datos de pruebas especializados con un generador de datos personalizado
Definir condiciones personalizadas para pruebas unitarias de base de datos