我有一种情况,我在一个asp页面中使用一个功能生成我的连接字符串。这个功能我可能需要在.net中从头开始完全做冗余。为了避免这种情况,我想得到连接字符串从.asp页面到.net页面的变量,即aspx.cs.是否有可能做到这一点。我可以通过google获得的几个选项是Server.Execute并通过.NET将Web请求发送到.asp页面并获取这些值。如果实际可能,我想知道与此方法相关的延迟。 / p>
有一个文件getconnstring.asp ...经典的asp文件 在这个文件中,我正在构建连接字符串,如
strACHConnection="Provider=MSDAORA.1;Password=..."
我想在asp.net网站中使用这个变量值,就像在getconnstring.aspx.cs.中那样可以使用Ajax请求。
答案 0 :(得分:2)
可以通过从您的asp.net应用程序向.asp应用程序发出WebRequest,从.asp应用程序获取连接字符串或任何其他信息。
但是,根据两者相对于彼此的位置,会出现延迟问题。所以我会获取一次信息,然后将其保存到文件或其他内容,然后在下次从那里读取。
答案 1 :(得分:0)
我正在发布另一个答案,所以我可以发布一些不会出现乱码的代码。以下是基于任务的版本。
var webRequest = WebRequest.Create("http://www.microsoft.com");
webRequest.GetReponseAsync().ContinueWith(t =>
{
if (t.Exception == null)
{
using (var sr = new StreamReader(t.Result.GetResponseStream()))
{
string str = sr.ReadToEnd();
}
}
else
System.Diagnostics.Debug.WriteLine(t.Exception.InnerException.Message);
});
这是一个未经测试的同步版本,但应该让你去。
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.microsoft.com");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
string str = reader.ReadtoEnd();