C# 侧面加载的windows应用商店应用需要计算机范围的设置

C# 侧面加载的windows应用商店应用需要计算机范围的设置,c#,windows-store-apps,settings,windows-8.1,sideloading,C#,Windows Store Apps,Settings,Windows 8.1,Sideloading,我们正在开发一个业务线Windows应用商店应用程序8.1,我们正在通过侧加载过程进行部署,但在本例中,我们需要包括一个系统范围的设置,即数据库服务器的地址作为URI 我们不希望最终用户通过应用程序进行设置,因为这需要在用户特定的本地或漫游设置中进行设置-理想情况下,我们希望在应用程序部署到计算机时进行设置,因为产品的不同安装将需要不同的数据库字符串 在Windows窗体世界中,我们会在应用程序的program files文件夹中使用app.config,但据我从MSDN看到的情况,在Windo

我们正在开发一个业务线Windows应用商店应用程序8.1,我们正在通过侧加载过程进行部署,但在本例中,我们需要包括一个系统范围的设置,即数据库服务器的地址作为URI

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

在Windows窗体世界中,我们会在应用程序的program files文件夹中使用app.config,但据我从MSDN看到的情况,在Windows应用商店的沙箱中没有类似的配置,因为应用程序安装在\Users\[用户名]下的结构中 文件夹结构

我们想到了一些有点笨重的东西

硬编码地址并为每个客户部署执行新构建 如果我们需要更改端口号,硬编码地址并使用DNS重新映射指向真实的服务器名称是无法应付的 允许最终用户通过“设置”按钮访问设置并按用户存储
是否有其他人解决了此问题,并提出了一种方法,可以在部署期间进行设置,也可以通过另一种机制将此设置放入每个用户安装的Windows 8应用程序的沙箱中。

我正在尝试解决这种情况。我想我不会使用分支方法,而是使用msbuild的客户构建。使用/p:customer=customer1运行msbuild,并且在项目文件中具有

app.config 然后在您的应用程序中包含一个app.config文件,其中包含每个客户配置的内容。
如果您有一个新客户,只需添加另一个newcustomer.config文件并使用msbuild projecfile/p:customer=newcustomer构建应用程序,或者使用一个聪明的批处理msbuild来查找所有*.config文件并为其构建项目。

我会选择每个客户的分支选项,如果您需要一台PC来拥有多个应用程序,我没有想到这一点,但这是一种为每个部署选项执行新构建的好方法。谢谢:直到您需要合并到一千个分支为止,但是如果您是侧向加载的,我认为卷是可以管理的。。。