我正在开发一个包含消耗OAuth 2.0服务的Windows运行时组件(它使用WebAuthenticationBroker并安全地存储返回的令牌),但OAuth服务可以托管在多个不同位置之一。例如,我们拥有自己的本地开发服务,最多5个不同的alpha / qa环境,一个pre-prod环境和实时生产环境。所有这些不同的环境都会响应不同的URI。
我希望能够更改我的组件所针对的URI,以便使用我的组件的人可以针对这些环境中的任何一个但我并不特别想将URI放在设置中(如果可能的话)因为我不希望最终用户能够配置它。
我考虑使用#if Debug / Live / Preprod / QA1等,并在代码中包含内联的各种URI,但它似乎不是一个非常实用的解决方案。我不想让我的二进制文件的许多不同版本可供选择。 管理这个有实用的方法吗?
我刚刚想到的一个想法是假设组件正在使用实时服务器并使用ApplicationData中的设置来覆盖它。我不确定运行时组件是否会与正在使用它的应用程序共享相同的ApplicationData存储,我想它可能会,但我只是猜测。
注意,我已经在MSDN的Win 8开发人员论坛上发布了这个问题。
答案 0 :(得分:1)
我在公共接口SetConfiguration(Configuration c)
中创建了一个方法。如果使用我的组件的开发人员没有提供Configuration
实例,那么该组件将使用我的默认值,否则他们可以在Configuration
实例中提供他们自己的替代。