Самый простой способ, который я нашел, - это явное объявление зависимости между проектом Silverlight и проектом, на котором размещается служба RIA.
Вам необходимо открыть в текстовом редакторе файл проекта Silverlight и добавить фрагментк нему:
<ItemGroup>
<ProjectReference Include="..\Path\Your.Hosting.Project\Your.Hosting.Project.csproj">
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
Это сообщит msbuild о создании веб-службы перед созданием приложения Silverlight.И это будет работать только при сборке с помощью msbuild, VS выдаст ошибку.
Чтобы встроить ее также в Visual Studio, вам нужно обернуть этот фрагмент в Target и добавить его в InitialTargets в узле Project:
<Target Name="MySpecialReferences">
<ItemGroup>
<ProjectReference Include="..\Path\Your.Hosting.Project\Your.Hosting.Project.csproj">
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
</Target>
<Project ... InitialTargets="MySpecialReferences" ... >
Visual Studio 2010 пропустит эту цель сейчас, но msbuild будет использовать для изменения порядка сборки проектов.