2

ビルド サーバーで動作する Visual Studio 2010 データ ツール プロジェクトのビルドを取得しようとしています。サーバーは 2008 R2 (64 ビット) で、ここの手順に従って必要な前提条件をインストールしました。プロジェクトは、完全な VS 2010 インストールでローカルに正常にビルドされます (常にではありません!) が、ビルド サーバーでは次のエラーが表示されます (簡潔さと匿名性のために編集されています)。

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets(513,5): error MSB4018:
The "SqlBuildTask" task failed unexpectedly. 
 System.MissingMethodException: Method not found: 'System.Collections.Generic.Dictionary`2<System.String,System.String> Microsoft.Data.Tools.Schema.Sql.Build.SqlPropertiesHelper.ParseContributorArgs(System.String)'.
  at Microsoft.Data.Tools.Schema.Tasks.Sql.SqlBuildTask.ExecuteValidateModelStep()
  at Microsoft.Data.Tools.Schema.Tasks.Sql.SqlBuildTask.ExecuteStep(Func`1 step)
  at Microsoft.Data.Tools.Schema.Tasks.Sql.SqlBuildTask.Execute()
  at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
  at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask, Boolean& taskResult)

この問題を解決する方法についてのアイデアはありますか?

4

2 に答える 2

2

自己回答で申し訳ありませんが、これが誰かの役に立てば幸いです。

SqlTask​​s.targets ファイルを調べたところ、SqlBuildTask が「C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\Microsoft.Data.Tools.Schema.Tasks.Sql.10.dll」から作成されていることがわかりました。 " ファイル。ビルドがローカルで動作していたので、そことビルド サーバーのバージョンを比較しました。一部の DLL のバージョンは同じであることに気付きましたが、他のバージョンは異なっていました。「不足しているメソッド」が存在するはずの場所を見つけるために熟考しようとしましたが、あきらめて、「en」と「1033」を除くビルドサーバー上の同じフォルダーに、開発マシンからフォルダーの内容をコピーすることにしましたフォルダ。

これで問題は解決したようです。ビルドサーバーで実行しなければならなかった途方もない数の個別のインストールのどこかで、互いに同期していないdllが導入され、これが問題の原因であるとしか思えません.

誰かが適切に説明したり、より正当な解決策を提案したりできれば素晴らしいことです。

于 2013-10-02T15:24:35.903 に答える
0

SQL Server 2012 をインストールすると、Visual Studio の SSDT にも問題があります。SQL のインストール後に最新の SSDT を再インストールすることで解決しました。質問はVS2010に関するものですが、SSDTの問題はどこにでもあるようです。

ここにいくつかの詳細情報があります: http://fubnuts.wordpress.com/2013/05/31/fun-with-vs2012-sql-server-projects-and-sql-server-2012/

SSDT のダウンロードはこちら: http://msdn.microsoft.com/en-US/data/hh297027

于 2014-09-13T18:52:44.550 に答える