'AdditionalDeploymentContributors' is not a valid argument for the 'Publish' action 'AdditionalDeploymentContributors' is not a valid argument for the 'Publish' action powershell powershell

'AdditionalDeploymentContributors' is not a valid argument for the 'Publish' action


I suspect you're getting that Contributor initialization error because you're using Ed's contributor with the latest version of SqlPackage.exe. The deployment contributor was built targeting an earlier version of the DACFx API and we've updated some version numbers. You can work around this by adding a binding redirect to the SqlPackage.exe.config file. Here are instructions from Jack Yang on the MSDN SSDT forum (https://social.msdn.microsoft.com/Forums/sqlserver/en-US/ee3f886e-6b5e-4b95-b912-e06354534bf9/sqlpackageexe-version-130-wont-load-additionaldeploymentcontributors?forum=ssdt)

To run against version 130, please modify the SqlPackage.exe.config to add the binding redirect on the Microsoft.SqlServer.Dac.dll and Microsoft.SqlServer.Dac.Extensions.dll. This file can be found right next to SqlPackage.exe.

Example shown in below,

<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="Microsoft.SqlServer.Types" publicKeyToken="89845dcd8080cc91" culture="neutral" /> <bindingRedirect oldVersion="10.0.0.0" newVersion="13.0.0.0" /> <bindingRedirect oldVersion="12.0.0.0-13.0.0.0" newVersion="13.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="Microsoft.SqlServer.TransactSql.ScriptDom" publicKeyToken="89845dcd8080cc91" culture="neutral" /> <bindingRedirect oldVersion="12.0.0.0-13.0.0.0" newVersion="13.100.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="Microsoft.SqlServer.Dac" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> <bindingRedirect oldVersion="12.0.0.0" newVersion="13.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="Microsoft.SqlServer.Dac.Extensions" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> <bindingRedirect oldVersion="12.0.0.0" newVersion="13.0.0.0" /> </dependentAssembly> </assemblyBinding> </runtime>

We started shipping AppLocal version of Microsoft.SqlServer.TransactSql.ScriptDom with DacFx in July; therefore, depending on which version of DacFx you have, if you didn’t see the Microsoft.SqlServer.TransactSql.ScriptDom.dll in the same folder with DacFx, then you don’t need the binding redirect for it. It should be in the GAC already.