项目一致性检查失败.具有与项目不同的ProtectionLevel

MOT*_*DEX 16 ssis sql-server-2012

我有这个恼人的问题,它说项目和包有不同的保护级别.这不是真的,它们都设置为"EncryptSensitiveWithUserKey".

我试过在项目中期改变了这个保护级别 - 现在项目不会构建和其他一些解决方案,没有工作.

每当我想要构建或重建时,它说:

错误1项目一致性检查失败.检测到以下不一致:Persoon.dtsx具有与项目不同的ProtectionLevel.CountableUren.dtsx具有与项目不同的ProtectionLevel.Projecten.dtsx具有与项目不同的ProtectionLevel.Master_LAB_DSA.dtsx具有与项目不同的ProtectionLevel.DimProject.dtsx具有与项目不同的ProtectionLevel.DimPersoon.dtsx具有与项目不同的ProtectionLevel.DimLookupSources.dtsx具有与项目不同的ProtectionLevel.InitializeDim.dtsx具有与项目不同的ProtectionLevel.Master_LAB_ETL.dtsx具有与项目不同的ProtectionLevel.Master_LAB_DWH.dtsx具有与项目不同的ProtectionLevel.0 0

在"查看代码"中,当设置为"EncryptSensitiveWithUserKey"时,没有"DTS:ProtectionLevel ="X"".在项目的属性中,它被设置为"EncryptSensitiveWithUserKey".我也尝试将所有内容设置为"DontSaveSensitive",这也给了我同样的错误.

如何解决这个问题?

在此输入图像描述 在此输入图像描述

MOT*_*DEX 37

在上面的评论中通过billinkc的帮助找到了解决方案,并遵循以下解决方案:保护级别在项目中期改变 - 现在项目将无法构建

问题是ProtectionLevel不一样.有些是1和其他2,而在属性菜单中它们都是相同的.

所以这些步骤得到了修复:

  1. 在Visual Studio(2012)中打开您的项目.
  2. 右键单击屏幕右侧"解决方案资源管理器"中的项目名称,然后选择"属性"
  3. 在Security下将ProtectionLevel更改为DontSaveSensitive
  4. 双击一个包,在"属性"下,应该有一个包含属性的列表.将安全性下的ProtectionLevel 更改为属性中的DontSaveSensitive(对所有包执行此操作)
  5. 保存所有关闭Visual Studio(2012)
  6. 然后转到C:\ ProjectName\ProjectName \并搜索扩展名为.dtproj的文件.具有Integration Services项目文件类型的文件,不是具有Visual Studio项目用户选项文件类型的文件.
  7. 使用文本编辑器打开ProjectName.dtproj.我使用了notepad ++,但您也可以使用Visual Studio和其他文本编辑器打开它.
  8. 搜索 并将EncryptSensitiveWithUserKey更改 为DontSaveSensitive.
  9. 搜索并将此后面的任何数字更改为0.搜索整个文件,如果包含的包多于一个,则应该有多个.
  10. 保存文件,关闭它,进入Visual Studio(2012)并右键单击解决方案资源管理器中的项目名称,然后单击构建.现在一切都应该有效.

  • 为什么不在.dtproj文件中将*EncryptSensitiveWithUserKey*设置为1? (2认同)
  • 这基本上适用于我们 VS 2017 企业。我们在此解决方案中的所有 20 多个软件包上将 ProtectionLevel 从 1 设置为 0。我们发现我们必须进行重建而不仅仅是构建来解决这个问题。我很好奇为什么会首先发生这种情况,以及为什么 SSIS gui 开发人员采取的操作无法修复它(您必须手动编辑 dtprof 文件才能修复此问题)。 (2认同)

Ste*_*Cav 6

我在其他解决方案中创建的新 dtsx 中收到了此错误。

我删除了新的包并重新添加它,就很好了。