Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Le niveau de protection a changé au milieu du projet - maintenant le projet ne sera pas construit

Je soupçonne que vous avez rencontré le même problème que moi. J'ai corrigé tous mes packages via l'API pour qu'ils indiquent tous qu'ils étaient DTS:ProtectionLevel="0" qui n'est pas protégé.

Le fichier de projet (.dtproj) a également un niveau de protection défini sur DontSaveSensitive. <SSIS:Project SSIS:ProtectionLevel="DontSaveSensitive" xmlns:SSIS="www.microsoft.com/SqlServer/SSIS">

Le décalage pour moi était qu'à l'intérieur du fichier de projet, il garde une trace de beaucoup trop d'informations sur chaque package, donc si vous faites défiler vers le bas, vous verrez une entrée par package comme <SSIS:Property SSIS:Name="ProtectionLevel">3</SSIS:Property> ou quel que soit le numéro par défaut. Faites que 0 dans le fichier (rechercher et remplacer). Enregistrez le fichier de projet et il va maintenant se construire.

Vous devrez peut-être effectuer un Build All pour le faire construire. Je soupçonne que VS/SSDT essaie d'utiliser les données supplémentaires qu'il stocke dans le fichier .dtproj pour déterminer s'il doit valider tous les packages d'un projet. Depuis que nous avons édité le fichier à la main, il n'a pas déclenché le capteur qui serait normalement retourné pour signaler qu'une recompilation complète était nécessaire.