Visual studio 使用Visual Studio数据库项目时在重构操作上执行自定义脚本
如果我在Visual Studio中使用Schema视图重构数据库列,我将得到如下重构日志:Visual studio 使用Visual Studio数据库项目时在重构操作上执行自定义脚本,visual-studio,refactoring,database-project,Visual Studio,Refactoring,Database Project,如果我在Visual Studio中使用Schema视图重构数据库列,我将得到如下重构日志: <Operation Name="Rename Refactor" Key="32f8afe4-af53-441d-a93b-46097d19b4ae" ChangeDateTime="02/24/2014 08:53:02"> <Property Name="ElementName" Value="[dbo].[table1].[col1]" /> <P
<Operation Name="Rename Refactor" Key="32f8afe4-af53-441d-a93b-46097d19b4ae" ChangeDateTime="02/24/2014 08:53:02">
<Property Name="ElementName" Value="[dbo].[table1].[col1]" />
<Property Name="ElementType" Value="ISqlSimpleColumn" />
<Property Name="ParentElementName" Value="[dbo].[table1]" />
<Property Name="ParentElementType" Value="ISql90Table" />
<Property Name="NewName" Value="[col1Refactored]" />
</Operation>
假设我只想在部署时触发此特定重构时运行一些自定义脚本。如何做到这一点?一个可能的解决方案(未测试)是调整重构日志表,使其包含一个默认为GETDATE()的“inserted date”列。如果这次启动了该GUID,请运行脚本。如果在部署期间不禁用DDL触发器,另一种可能是跟踪DDL触发器。如果这取决于新名称,您可能需要在特殊情况下处理,因为如果该列不存在,它可能无法正确构建/发布。谢谢Peter。我希望有一个“内置”的解决方案,但我想我将不得不解决一个变通办法。