如何在 DEBUG 和 RELEASE 模式之间切换 Settings.settings?
Posted
技术标签:
【中文标题】如何在 DEBUG 和 RELEASE 模式之间切换 Settings.settings?【英文标题】:How Can I Switch Settings.settings between DEBUG and RELEASE mode? 【发布时间】:2014-12-01 04:18:06 【问题描述】:我在 Project/Properties/Settings.settings 中有一个 URL,更具体地说,是一个 Web 服务 URL。它是在我添加 Web 服务引用时由 Visual Studio 添加的。
DEBUG 和 RELEASE 模式的 url 应该不同,我如何设置 Visual Studio 以便它在 DEBUG/RELEASE 下使用正确的 url 构建?
PS:我不想手动修改 Settings.settings,因为 Visual Studio 不建议这样做。
【问题讨论】:
【参考方案1】:您的设置文件中可以同时包含这两个网址。然后您可以根据当前模式访问特定设置:
#if DEBUG
string myUrl = Properties.Settings.Default.DebugUrl;
#else
string myUrl = Properties.Settings.Default.ReleaseUrl;
#endif
【讨论】:
不幸的是,就我而言,这段代码也是由 Visual Studio 自动生成的。我在做:右键我的项目-添加服务参考-高级-添加网络参考。 在大多数情况下,我为“服务客户端层”创建单独的项目。那么你就不必再处理这个问题了。您始终可以使用您的应用程序设置,自动生成的值将不再在运行时使用。【参考方案2】:我找到了解决办法:
继承自 SoapHttpClientProtocol 的自动生成代理类有一个属性“Url”,您可以将其设置为将 Web 服务指向另一个位置。因此,我可以将 Web 服务链接保存在配置文件中,并将其获取到新创建的代理客户端对象上的“Url”:
string serviceUrl = ConfigurationManager.AppSettings["URL"];
QisWebServiceClient qis = new QisWebServiceClient();
qis.Url = serviceUrl;
【讨论】:
以上是关于如何在 DEBUG 和 RELEASE 模式之间切换 Settings.settings?的主要内容,如果未能解决你的问题,请参考以下文章
Flutter中如何判断当前运行模式是Debug还是Release
Flutter中如何判断当前运行模式是Debug还是Release
Flutter中如何判断当前运行模式是Debug还是Release
Flutter中如何判断当前运行模式是Debug还是Release