每次使用(有状态)Actor服务构建解决方案时,服务都会自动添加到ApplicationManifest.xml DefaultServices部分。
如何为我想手动实例化的服务禁用此行为?
我尝试通过删除<DefaultService>
标记来修改Actor服务的ServiceManifest.xml,但每次构建时它也会自动添加回来。
答案 0 :(得分:0)
所有服务都自动设置为默认值。您无法仅禁用该功能。最好的选择是插入一些MSBuild逻辑,在对文件应用这些不需要的更改之后更新应用清单文件。您可以将其集成到主打包逻辑中,以便在您从VS发布或F5时自动执行。
为此,您可以将MSBuild目标添加到.sfproj文件中:
<Target Name="AfterPackage" AfterTargets="Package">
<!-- Insert your MSBuild logic here -->
</Target>
通过在那里插入自己的MSBuild逻辑,您可以对应用清单文件进行必要的更改,并在VS运行包操作时隐式执行这些更改。因此,在您的情况下,您可以更新文件以将服务定义为默认服务。您可以使用PackageLocation MSBuild属性确定包文件夹的路径。