Car*_*arl 7 msbuild silverlight ria
我有一个Visual Studio 2010解决方案文件,其中包含许多项目.有许多Silverlight项目(充当模块),Silverlight Shell项目和许多RIA服务.
使用TFS 2010执行构建时,它总是会失败,因为RIA服务生成的代理类尚未首先构建.到目前为止,我看到的唯一解决方案是手动更改.sln文件中的构建顺序.不,谢谢,有很多项目.
我不想将解决方案分解为客户端和服务器端解决方案,而是希望找到更好的解决方案.
显然,MSBuild 4忽略了.sln文件中的构建顺序.
有没有人有任何想法/建议?
谢谢,
我发现最简单的方法是明确声明Silverlight项目与托管RIA服务的项目之间的依赖关系.
您必须在文本编辑器中打开Silverlight项目文件并向其中添加片段:
<ItemGroup>
<ProjectReference Include="..\Path\Your.Hosting.Project\Your.Hosting.Project.csproj">
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)
这将告诉msbuild在构建Silverlight应用程序之前构建您的Web服务.它只有在使用msbuild构建时才会起作用,VS会抛出错误.
要在Visual Studio中构建它,您必须将此片段包装在Target中并将其添加到Project节点中的InitialTargets:
<Target Name="MySpecialReferences">
<ItemGroup>
<ProjectReference Include="..\Path\Your.Hosting.Project\Your.Hosting.Project.csproj">
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
</Target>
<Project ... InitialTargets="MySpecialReferences" ... >
Run Code Online (Sandbox Code Playgroud)
Visual Studio 2010现在将跳过此目标,但msbuild将用于更改项目的构建顺序.
这绝对不是“正确”的解决方案,但作为临时选项,签入Generated_Code\*.g.cs
Silverlight 项目中存在的 RIA 服务的生成文件怎么样?如果人们检查最新版本及其类的匹配更新DomainService
,那么所有内容都应该按预期构建。
归档时间: |
|
查看次数: |
1479 次 |
最近记录: |