我在Visual Studio 2013
中有一个包含SQL Server Database Project
的解决方案,我最近添加了一个Unit Test Project
,其中有136个测试。在Test Explorer
中,当我点击Run All
执行所有测试时,我收到以下错误:
04018:“SqlBuildTask”任务意外失败。 System.MethodAccessException:尝试通过方法'Microsoft.Data.Tools.Schema.Sql.Build.SqlTaskHost.OnCreateCustomSchemaData(System.String,System.Collections.Generic.Dictionary`2)'来访问方法'Microsoft.Data.Tools.Components .Diagnostics.SqlTracer.ShouldTrace(System.Diagnostics.TraceEventType)'失败了。 在Microsoft.Data.Tools.Schema.Sql.Build.SqlTaskHost.OnCreateCustomSchemaData(String filePath,Dictionary`2 referenceMetadata) 在Microsoft.Data.Tools.Schema.Sql.Build.SqlTaskHost.CreateCustomSchemaData(String filePath,Dictionary`2 referenceMetadata) 在Microsoft.Data.Tools.Schema.Tasks.Sql.TaskHostLoader.ProcessReferences(TaskLoggingHelper providedLogger,SqlTaskHost主机,ErrorManager错误) 在Microsoft.Data.Tools.Schema.Tasks.Sql.TaskHostLoader.LoadImpl(ITaskHost providedHost,TaskLoggingHelper providedLogger) 在Microsoft.Data.Tools.Schema.Tasks.Sql.TaskHostLoader.Load(ITaskHost providedHost,TaskLoggingHelper providedLogger) 在Microsoft.Data.Tools.Schema.Tasks.Sql.SqlBuildTask.ExecuteLoadTaskHostStep() 在Microsoft.Data.Tools.Schema.Tasks.Sql.SqlBuildTask.ExecuteStep(Func`1步骤) 在Microsoft.Data.Tools.Schema.Tasks.Sql.SqlBuildTask.Execute() 在Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() 在Microsoft.Build.BackEnd.TaskBuilder.d__20.MoveNext()
答案 0 :(得分:1)
这应该通过安装最新版本的SSDT来修复,可在此处获取:https://msdn.microsoft.com/en-us/dn864412
如果已安装最新版本的SSDT,请尝试修复安装。