我已经开始构建一个UWP应用程序。在其中,我将有不同的API部署,这些部署会更改BaseURL,如下所示:
基本上,我想找一种方法在构建过程中动态改变 baseURL,具体取决于我正在进行哪种类型的构建,即开发、测试或生产。
我以前有 iOS 经验,在 XCode 中我们为此创建不同的 schemes。
我已经看过文档了,我认为在 c# 和 Visual Studio 中,最好的选择是使用 Build configuration,因为它被描述为:
“您可以为解决方案创建多个构建配置。例如,您可以配置一个调试构建,供测试人员用于查找和修复问题,您可以配置不同类型的构建,分别分发给不同的客户。”
我已经创建了一个名为“AppName.Dev”的新构建配置,但如何使用它来将 baseURL 常量更改为 Dev URL?
这可能会让人感到基础,并显示出我对 c# 和 Visual Studio 的不熟练,但即使我阅读了相关文档,也无法想象如何实现它。你能帮帮我吗?
编辑:阅读了这篇文章之后,我创建了四个不同的配置,并定义了如下的条件编译符号: 我现在已经在我的常量文件中使用了定义的编译符号,就像这样:
这段话的意思是:尽管我正在使用 DEV 配置,但符号似乎无法正常工作,因为它返回了空字符串,甚至 baseURL 也是如此。如果我解决了这个问题,我会更新的。
编辑2:我弄清楚了。我的解决方案中有两个项目,我在一个项目中定义了配置和它们的符号,而在另一个项目中使用它们。我会发布一个答案。
//DEV Api
public const string BaseURL = "http://mydevapi.com/devApi";
//Test Api
public const string BaseURL = "http://mytestapi.com/testApi";
//UAT Api
public const string BaseURL = "http://myuatapi.com/uatApi";
//Live Api
public const string BaseURL = "http://myliveapi.com/LiveApi";
基本上,我想找一种方法在构建过程中动态改变 baseURL,具体取决于我正在进行哪种类型的构建,即开发、测试或生产。
我以前有 iOS 经验,在 XCode 中我们为此创建不同的 schemes。
我已经看过文档了,我认为在 c# 和 Visual Studio 中,最好的选择是使用 Build configuration,因为它被描述为:
“您可以为解决方案创建多个构建配置。例如,您可以配置一个调试构建,供测试人员用于查找和修复问题,您可以配置不同类型的构建,分别分发给不同的客户。”
我已经创建了一个名为“AppName.Dev”的新构建配置,但如何使用它来将 baseURL 常量更改为 Dev URL?
这可能会让人感到基础,并显示出我对 c# 和 Visual Studio 的不熟练,但即使我阅读了相关文档,也无法想象如何实现它。你能帮帮我吗?
编辑:阅读了这篇文章之后,我创建了四个不同的配置,并定义了如下的条件编译符号: 我现在已经在我的常量文件中使用了定义的编译符号,就像这样:
public const string BaseURL = "";
#if DEV
public const string BaseURL = "http://mydevapi.com/devApi";
#elif TEST
public const string BaseURL = "http://mytestapi.com/testApi"
#elif UAT
public const string BaseURL = "http://myuatapi.com/uatApi"
#elif LIVE
public const string BaseURL = "http://myliveapi.com/LiveApi";
#endif
这段话的意思是:尽管我正在使用 DEV 配置,但符号似乎无法正常工作,因为它返回了空字符串,甚至 baseURL 也是如此。如果我解决了这个问题,我会更新的。
编辑2:我弄清楚了。我的解决方案中有两个项目,我在一个项目中定义了配置和它们的符号,而在另一个项目中使用它们。我会发布一个答案。