调用页面而不加载

本文关键字:加载 调用 | 更新日期: 2023-09-27 18:25:33

我正在一个C#代码隐藏文件中工作。基本上,我正在努力保持两个会话之间的数据,一个经典的aspone.net并行。如果来自.net会话的语言选择被更新,我想调用页面update_lang.asp页面,并将其传递给用户新的语言选择。我不想把控制权传递给这个页面,也不想加载它,我只是想让它"运行"并更新必要的会话变量,我该如何调用这个页面。

我的第一个想法是session.transfer(),但这会转移控制权,我希望当前页面继续运行,有什么想法吗?

感谢

调用页面而不加载

您可以尝试使用WebClient(http://msdn.microsoft.com/en-us/library/system.net.webclient.aspx)。它允许你打开任何网页,所以你可以很容易地打开你的ASP文件。

public void LoadPage()
{
    string DestinationUrl = ".../file.asp";
    WebClient wc = new WebClient();
    string data = "Some data";
    //String s = wc.UploadString(DestinationUrl, data);
    String s = wc.UploadStringAsync(DestinationUrl, data);
}

小提示:虽然这可能是可能的,但听起来像是一个真正的破解解决方案。。也许你可以找一个更坚实的方法。。。

编辑

正如Balexandre所指出的,如果不需要等待结果,那么最好进行异步调用。这样,调用就不会阻塞线程。

发出http web请求:

HttpWebRequest myReq =
   (HttpWebRequest)WebRequest.Create("http://www.mypage.com/");
WebResponse myResponse = myReq.GetResponse(); 

http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.aspx

您可以将javascript注入到对有问题的配置页面进行AJAX调用的页面中。

如果这是可取的话,这将导致用户的机器进行呼叫。