Estoy tratando de hacer algunas mejoras para el marco tSQLt y en su mayoría estoy terminado, pero no puedo hacerlo, ya que fallan algunas pruebas relacionadas con el certificado que no estaba tocando:
[exec] |18|[InstallExternalAccessKeyTests].[test creates correct certificate in master] | 120|Failure|
[exec] |19|[InstallExternalAccessKeyTests].[test tSQLt can be set to EXTERNAL ACCESS after InstallExternalAccessKey executed] | 333|Failure|
[exec] |20|[InstallExternalAccessKeyTests].[test tSQLtExternalAccessKey install data is signed with same key as tSQLt.clr] | 10|Failure|
El error de falla es:
Expected: %publickeytoken=8c9a92de0f9c7794,%
Actual: tsqltclr, version=1.0.7216.13228, culture=neutral, publickeytoken=8d3f4bf59e4c22fd, processorarchitecture=msil
Trataré de describir mi proceso de instalación.
Instalé las fuentes de este marco utilizando las siguientes pautas . Sin embargo, no pude comenzar el proyecto después de eso, ya que estaba fallando con los siguientes errores y toda la resolución del problema se realizó en esa publicación SO :
[exec]
C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets (2482,5): error MSB3325: No se puede importar el siguiente archivo de clave: tSQLtOfficialSigningKey.pfx. El archivo de clave puede estar protegido por contraseña. Para corregir esto, intente importar el certificado nuevamente o instale manualmente el certificado en el CSP de nombre seguro con el siguiente nombre de contenedor de clave: VS_KEY_C20B79DE0583A5C1 [E: \ Source \ tSQLt \ tSQLtCLR \ tSQLtCLR \ tSQLtCLR.csproj] [exec]
C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets (2482,5): error MSB3321: se canceló la importación del archivo de clave "tSQLtOfficialSigningKey.pfx". [E: \ Source \ tSQLt \ tSQLtCLR \ tSQLtCLR \ tSQLtCLR.csproj]
Para solucionar este problema, he creado nuevas claves para cada proyecto sin contraseña:
Veo que creó el snk
archivo, no tan original pfx
. Después de eso, intenté ejecutar la compilación nuevamente y fallé con los errores que mencioné anteriormente.
tsql
framework? Incluye muchos códigos en el código de su base de datos, muchas funciones SQL CLR. He intentado usar if para 2 grandes proyectos durante el año y falla mucho. Será mejor crear su propia prueba usando .net o / y SQL y ejecutarlos a través de alguna herramienta para obtener una ejecución paralela.