在我团队的部署环境中,某些REST数据api有三个端点:alpha,beta和production。
我已经设置了条件编译,因此在RELEASE配置中,项目肯定会连接到生产API。但是,在DEBUG配置中,项目可以根据开发人员的偏好连接到三个端点中的任何一个。
目前,开发人员通过注释掉不需要的端点来设置此首选项。
但是,不同的开发人员希望在开发期间连接到不同的端点,因此该系统与git和团队不能很好地协作。如何更改设置,以便仅在DEBUG配置中根据开发人员首选项(而不是提交给git)选择api端点?
const string api_prod = "https://api.mydomain.com/api/";
const string api_beta = "https://betaapi.mydomain.com/api/";
const string api_alpha = "https://alphaapi.mydomain.com/api/";
#if DEBUG
//static readonly string BaseUrl = api_prod;
//static readonly string BaseUrl = api_beta;
static readonly string BaseUrl = api_alpha;
#else
static readonly string BaseUrl = api_prod;
#endif
答案 0 :(得分:0)
您应该使用外部配置文件,并使其包含依赖于编译配置。看看慢速猎豹https://visualstudiogallery.msdn.microsoft.com/69023d00-a4f9-4a34-a6cd-7e854ba318b5
保持硬编码的uris永远不是一个好主意。
答案 1 :(得分:0)
我同意另一个答案,因为最好使用.config或类似机制来存储URL。也就是说,正如你所指出的那样,并没有真正解决你所问的问题。这是你应该解决的问题,但修复它不会改变基本问题。
您对“开发者偏好”的含义并不十分清楚。但是,您可以使用至少一些不同的方法:
AppData
下的Designer控制的.config文件中。%USERPROFILE%\Documents\MyProgam\custom.settings.config
)。这不是一份详尽的清单。如果你有更具体的想法,你需要在你的问题中解释。