[конкретные номера версий предметов, связанных с этой проблемой, указаны в конце текста]
При сборке 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