Pal*_*881 10 sql-server sql-server-data-tools
我需要拦截SSDT构建来修改构建脚本.我已经按照MSDN部署计划修改器教程,但是当我尝试构建数据库项目时,出现以下错误:
Required contributor with id 'MyDeploymentContributor.SqlRestartableScriptContributor'
could not be loaded.
Run Code Online (Sandbox Code Playgroud)
我使用的是Visual Studio 2012(版本11.0.61219.00 Update 5)和SSDT版本11.1.50730.0.
我签署了程序集,但没有指定密码.
我已经按照我在网上找到的几个解决方案无济于事,包括以下内容:
将MyDeploymentContributor.dll和MyDeploymentContributor.pdb复制到以下位置:
C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\Extensions
C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\120
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\120\Extensions
捕获SSDT和DacFx的事件日志(遵循Kevin Cunnane的说明,访问https://social.msdn.microsoft.com/Forums/en-US/5c84ab8e-b50b-4ecd-86da-866ac3bb2248/known-issue-with-ssdt-可扩展性 - 当前 - 释放?论坛= ssdt).以下是DacFx日志的结果:
C:\Program Files
(x86)\Microsoft Visual Stusio 11.0\Common7\IDE\Extensions\Micrsoft\SQLDB\DAC\120\Extensions\MyDeploymentContributor.dll
添加程序集C:\Program Files
(x86)\Microsoft Visual Stusio 11.0\Common7\IDE\Extensions\Micrsoft\SQLDB\DAC\120\Extensions
添加到扩展查找路径的目录Microsoft.SqlServer.Dac.Deployment.DeploymentPlanExecutor
Microsoft.SqlServer.Dac.Deployment.DeploymentPlanModifier
没有ContributorLoader
消息.从该日志中,贡献者似乎正确加载.SSDT日志不包含任何提及贡献者的事件.
没有必需的贡献者参数,因此DeploymentContributor
我的.sqlproj文件中的节点如下所示:
<PropertyGroup>
<DeploymentContributors>
$(DeploymentContributors); MyDeploymentContributor.SqlRestartableScriptContributor
</DeploymentContributors>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏.谢谢!
小智 5
感谢 Ed Elliot ( https://the.agilesql.club/Blogs/Ed-Elliott/About ),我能够解决我的案例中的这个问题。
我听从了埃德的建议,结果很有效。我创建了一个类似的文件夹C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\120\Extensions\[YourContributorName]\
,并将所有内容(包括 DLL)复制到C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\120
那里。
在贡献者项目中,我引用了里面的DLLC:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\120\Extensions\[YourContributorName]\
项目成功构建后,我将贡献者 .dll 和 .pdb 文件复制到以下位置:
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\120\Extensions\[YourContributorName]\
之前,我引用了C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin
.
希望这会对某人有所帮助。
归档时间: |
|
查看次数: |
1383 次 |
最近记录: |