【问题标题】:App.config on windows phone 7?Windows Phone 7上的App.config?
【发布时间】:2023-04-10 20:34:01
【问题描述】:

亲爱的, 我正在 windows phone 7 上构建应用程序。我的应用程序需要一些配置,例如 Web 服务 Urls、数据库名称……这些配置可能会在部署期间随时更改(但我不想重新构建应用)。在 WPF 应用程序中,我经常将这些配置保存在 App.config 文件中,但在 WP7 应用程序中我不能。

如果你之前遇到过这个问题并且有解决办法,请告诉我。

非常感谢。

平阮。

【问题讨论】:

    标签: configuration windows-phone-7 app-config


    【解决方案1】:

    WP7 不支持与桌面 .NET 应用程序相同的 app.config 文件概念。

    相反,如果您需要为应用提供基本配置信息,通常可以将常量和属性获取器存储在 App.xaml.cs 文件中。

    然后,您可以通过将 Application.Current 从应用中的任何位置强制转换为 App 来访问这些属性。

    var property = ((App) Application.Current).MyWebServiceUri;
    

    其他选项包括

    • 将 XML、JSON 或 INI 样式的数据文件存储为 Content 类型,然后打开该文件并在运行时对其进行解析
    • 存储资源文件,在运行时解析。

    【讨论】:

    • 如何存储环境特定的 url?像服务 url 可以在开发、测试、生产环境中有所不同
    【解决方案2】:

    我不清楚你的问题,但是:

    如果您想要可以在运行时更改的设置(一旦部署),则将此信息存储在 IsolatedStorage 中。您可以根据最适合您的数据的内容使用独立存储文件或独立存储设置。
    我已经通过在应用程序首次运行时写入到 IsolatedStorageFile 的代码中的默认设置来完成很多工作。然后可以根据需要读取和更新这些内容。

    如果您只想在构建时更改值,请将设置包含在资源 (.resx) 文件中。

    【讨论】:

    • 嗨,马特,感谢您的回复。我正在模拟器而不是真正的 wp7 设备上测试我的应用程序。那么,您能否确认如果我使用IsolatedStorageFile 保存设置文件,我会在真机上看到设置文件?
    • @Nguyen 是的,IsolatedStorage 在模拟器中的工作方式与在真实设备上的工作方式完全相同。
    猜你喜欢
    • 1970-01-01
    • 2012-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多