Почему включение опции msbuild OutputPath вызывает ошибку MetadataWorkspace при сборке Silverlight / WCF RIA sln? - PullRequest
1 голос
/ 01 декабря 2011

[конкретные номера версий предметов, связанных с этой проблемой, указаны в конце текста]

При сборке Foo.sln (SL4 с сервисами WCF / RIA) с помощью следующей команды msbuild:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild SNSC.sln /nologo /p:configuration=release /p:OutputPath=..\..\output\Foo /t:Rebuild

... Я получаю следующую ошибку:

«C: \ SourceCode2 \ prod \ current \ Silverlight \ Foo.sln» (перестроить цель) (1) -> "C: \ SourceCode2 \ prod \ current \ Silverlight \ Foo.Web.Data \ Foo.Web.Data.csproj" (Восстановить цель) (2) -> "C: \ SourceCode2 \ прод \ ток \ Silverlight \ Foo.Fha \ Foo.Fha.csproj" (цель по умолчанию) (3: 2) -> (цель CreateRiaClientFiles) ->
C: \ Program Files (X86) \ MSBuild \ Microsoft \ Silverlight \ v4.0 \ Microsoft.Ria.Client.targets (303,5): ошибка: Не удалось получить MetadataWorkspace для типа DbContext 'Foo.Web.Data.Fha.CoreDbContext. [C: \ SourceCode2 \ prod \ current \ Silverligh t \ Foo.Fha \ Foo.Fha.csproj]
C: \ Program Files (X86) \ MSBuild \ Microsoft \ Silverlight \ v4.0 \ Microsoft.Ria.Client.targets (303,5): ошибка: Не удалось получить MetadataWorkspace для типа DbContext 'Foo.Web.Data.LoanCorrespondence.CoreDbContext. [C: \ SourceCode2 \ prod \ cur rent \ Silverlight \ Foo.Fha \ Foo.Fha.csproj]

Однако, когда я удаляю опцию OutputPath (оставляя остальную часть команды такой же):

    C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild SNSC.sln /nologo /p:configuration=release /t:Rebuild

... сборка прошла успешно (хотя и с 77 предупреждениями). И, конечно, он не компилируется в VS2010.

Почему включение параметра OutputPath вызывает это исключение?

Особенности:

    * attempted on 2 different 64bit machines with same result
    * win7 OS
    * msbuild: C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild
    * Silverlight 4 with WCF RIA
...