Sideloaded windows store app需要机器范围的设置

时间:2014-05-09 15:01:43

标签: c# windows-store-apps settings windows-8.1 sideloading

我们正在开发一个业务线Windows应用商店应用(8.1),我们正在通过旁加载流程进行部署 - 但我们需要包含“系统范围”设置(在这种情况下,数据库的地址)服务器作为URI)

我们不希望最终用户通过应用程序设置此项(因为这需要在用户特定的本地或漫游设置中) - 理想情况下,我们希望在应用程序部署时进行设置到机器,因为产品的不同安装需要不同的数据库字符串。

在Windows窗体世界中,我们在应用程序的程序文件文件夹中使用app.config,但据我所知,从MSDN中可以看出,在Windows应用商店的沙箱中没有相应的内容。安装到\ Users \ [用户名]下的结构中 文件夹结构

我们有一些事情都有点笨拙......

  • 为每个客户部署对地址进行硬编码并执行新构建
  • 对地址进行硬编码并使用DNS重映射指向真实服务器名称(如果我们需要更改端口号,则无法应对)
  • 允许最终用户通过设置超级按钮访问该设置并按用户存储

是否有其他人解决了这个问题,并提出了一种在部署期间设置此方法的方法,或者通过其他机制将设置安装到Windows 8应用程序的每个用户沙箱安装中。

1 个答案:

答案 0 :(得分:0)

试着自己弄清楚这样的场景。我想我不会使用分支方法,而是使用msbuild进行客户构建。您使用/p:customer=customer1运行msbuild并在项目文件中包含

<ItemGroup Include='%(customer).config'> <Link>app.config</Link> </ItemGroup> 然后在您的应用程序中,您有一个app.config文件,其中包含每个客户配置的内容。 如果您有新客户,您只需添加另一个newcustomer.config文件并使用msbuild projecfile /p:customer=newcustomer构建应用程序,或者拥有一个聪明的批处理msbuild,它可以找到所有* .config文件并为它们构建项目。