如何使用设置部署 UWP 应用

本文关键字:UWP 应用 部署 设置 何使用 | 更新日期: 2023-09-27 18:34:00

通常,我使用位于app.config中的预定义配置来交付我的应用程序。所以我可以为客户 A 发布其他预定义设置,然后为客户 B 发布

如何在 uwp 中实现此目的?

如何使用设置部署 UWP 应用

由于 UWP 应用旨在通过应用商店部署,因此不再需要app.config文件。如果仍希望生成类似的行为,则必须使用编译器指令。

最简单的方法是创建一个类似于众所周知app.config的文件:

<Config>
    <!-- key-value pairs go here -->
</Config>

为您拥有的每个客户创建一个配置文件...

  • Assets
    • CustomerA.config
    • CustomerB.config
    • CustomerC.config

。并通过编译器指令加载它:

public Config GetConfig()
{
    var configFileName = GetConfigName();
    // Load config...
}
private string GetConfigName()
{
#if CUSTA
    return "CustomerA.config";
#endif
#if CUSTB
    return "CustomerB.config";
#endif
#if CUSTC
    return "CustomerC.config";
#endif
    throw new NotSupportedException(
        "Assembly was compiled for a customer which config doesn't exist.");
}

注意:如果不同配置文件的数量可能增加到未知数量,您宁愿实现识别客户并提供配置的 Web 服务。

编辑:也可以在应用程序中使用单个配置文件(这将阻止编译器指令(,因此在不同的构建配置中通过XSLT修改XML。
原理保持不变,但您将代码中烦人的部分放入 XSLT。

使用此设置类 https://github.com/joseangelmt/ObservableSettings。有了它,您无需创建 xml 文件,并且可以通过属性的属性修饰来设置预定义的值,并且它是可观察的。