2012-09-13 96 views
0

我为我的开发使用2个Web服务器,1个发布服务器,另一个用于调试。他们没有相同的网址。HttpWebRequest动态网址

我想制作一个HttpWebRequest,它可以在两台机器上工作,具体取决于代码所在的服务器。我的VS2010项目不是一个Web应用程序,所以我没有访问http上下文。

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(rootofwebserver + "/webservices/someservice.asmx/someoperation"); 

这就是我想要的。

这可能吗?

+0

你写了你需要的确切代码......那么问题是什么?也许“如何提供配置到我的控制台应用程序”? –

+0

'rootofwebserver'是未知的。问题是如何得到这个? Create方法只接受'http:// ....'网址。所以基本上它需要是动态的。 – wiruzman

+0

你是什么*动态*?服务器名称来自哪里?数据库?已知服务器列表?任何网络服务? – balexandre

回答

1

使用AppSettings元素设置你的网址:

<appSettings> 
    <add key="WebRequestUrl" value="..." /> 
</appSettings> 

然后在你的代码,你可以这样做:

string webRequestUrl = ConfigurationManager.AppSettings["WebRequestUrl"]; 
+0

我仍然认为这将是静态的。我需要的是: Server1:http://server1.com/webservice/... Server2:http://server2.com/webservice/... – wiruzman

+0

当您部署在每台服务器上,您可以更改配置... – Alessandro

+0

那就是我不想要的。我想要自动化的东西。 – wiruzman

0

您可以创建.txt文件和存储您的网址,并再次读取,如果您需要。我认为这是一个简单的方法。