And*_*rew 3 visual-studio-2012 sql-server-data-tools
我在构建数据库项目期间遇到以下异常.
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets(513,5): Error: MSB4018: The "SqlBuildTask" task failed unexpectedly.
14>Microsoft.Data.Tools.Schema.SchemaModel.ScriptCacheException: The cache identifier E:\Systems\MyProject\WorkingCopy-branch\source\Database.my_db_project\obj\debug.Deploy\ASMREXEXP.generated.sql does not exist.
Run Code Online (Sandbox Code Playgroud)
奇怪的是,构建在trunk上工作正常,但在功能分支上出现此异常失败.
我刚刚开始得到同样的错误.我们都看到提及的事实Schema.SchemaModel
告诉我,我们都使用某种文本模板策略.
VS在DB世界中构建文本模板的策略要求dbmdl
已经创建了一个文件以便它们运行.这实际上意味着您必须两次构建项目; 一旦建立新dbmdl
文件,然后再次拿起让你的文本模板跳舞它的效果.
有什么事发生-尤其是切换分支时-就是你结束了一个旧的dbmdl
文件,它是如此,从什么模板都期待不同,什么模板尝试做的是与"新"的赔率dbmdl
文件编译试图创建 - 就像尝试根据旧dbmdl
文件挑选模板补丁并将其应用于新文件一样 - 它不起作用,因为基线距离太远.
解决方案是dbmdl
在源代码树中找到该文件并将其删除. 然后,您可以构建以创建新dbmdl
文件.构建就会失败,因为模板会失败,但随后你建立一个第二时间和模板应该拿起新的dbmdl
文件,并取得成功.
归档时间: |
|
查看次数: |
1045 次 |
最近记录: |