【发布时间】:2010-09-13 06:15:38
【问题描述】:
当我将项目设置“生成序列化程序集”设置为“开”时,为什么 Visual Studio 2005 不生成序列化设置?
【问题讨论】:
标签: visual-studio-2005 xml-serialization sgen
当我将项目设置“生成序列化程序集”设置为“开”时,为什么 Visual Studio 2005 不生成序列化设置?
【问题讨论】:
标签: visual-studio-2005 xml-serialization sgen
It turns out that Dev Studio only honors this setting for Web Services.
对于非 Web 服务,您可以通过将 AfterBuild 目标添加到项目文件来使其工作:
<Target Name="AfterBuild" DependsOnTargets="AssignTargetPaths;Compile;ResolveKeySource" Inputs="$(MSBuildAllProjects);@(IntermediateAssembly)" Outputs="$(OutputPath)$(_SGenDllName)">
<SGen BuildAssemblyName="$(TargetFileName)" BuildAssemblyPath="$(OutputPath)" References="@(ReferencePath)" ShouldGenerateSerializer="true" UseProxyTypes="false" KeyContainer="$(KeyContainerName)" KeyFile="$(KeyOriginatorFile)" DelaySign="$(DelaySign)" ToolPath="$(SGenToolPath)">
<Output TaskParameter="SerializationAssembly" ItemName="SerializationAssembly" />
</SGen>
</Target>
另见:
【讨论】:
可以使用sgen.exe手动完成。
【讨论】: