我们可以通过Web应用程序调用aspx页面,它是Web服务的一部分+消费来自其他页面的网页响应

时间:2010-11-17 03:42:05

标签: c# asp.net web-services webresponse



我编写了一个示例Web服务,其中包含某些.aspx页面。我编写了一个代码来从该Web服务中使用webmethods。
现在,是否可以从调用Web应用程序加载作为Web服务一部分的aspx页面,即从Web服务之外的另一个aspx页面加载。

这种情况如何;
1.我有一个Web应用程序运行,页面在浏览器中显示Page1.aspx。
2。我已经创建了一个Web服务,它有一个aspx页面说Page2.aspx。
3. Page1.aspx上有一个按钮。
4.现在,当客户端点击按钮时,是否可以加载Page2.aspx,它不是Web应用程序的一部分,而是Web服务。

请帮助我在这种情况下。我在谷歌搜索,但没有得到适当的修复。
我写的示例代码;
网络服务方法;

           [WebMethod]
           public string WelcomeUser(String _userName)
           {
               return "You are Welcome : " + _userName;
           }


消费者网络应用程序; Default.aspx是启动页面。它的加载事件就像;

           WebRequest request  = WebRequest.Create("http://localhost:1741/HelloWorldConsumer/gen.aspx");
           //If required by the server, set the credentials.
            request.Credentials = CredentialCache.DefaultCredentials;
           //Get the response.
            HttpWebResponse response  = (HttpWebResponse)request.GetResponse();


            // Get the stream containing content returned by the server.
            Stream dataStream  = response.GetResponseStream();
            // Open the stream using a StreamReader for easy access.
            StreamReader reader = new StreamReader(dataStream);
           //Read the content.
            String responseFromServer  = reader.ReadToEnd();

            Test.InnerHtml = responseFromServer;
            //Cleanup the streams and the response.
            reader.Close();
            dataStream.Close();
            response.Close();


Gen.aspx是与Web服务通信的人。它的页面加载是;

         HelloWorld.Service _objHello = new HelloWorld.Service();
        _objHello.WelcomeUser("Guest");


我想要做的是,获取Gen.aspx中获得的响应并将其传递给default.aspx页面。 任何人都可以帮我实现这个目标吗?


提前谢谢。

的问候,
维杰

1 个答案:

答案 0 :(得分:1)

当你说aspx页面是网络服务的一部分时 - 你是什么意思?假设它是一个普通页面,当通过HTTP GE / POST调用时,使用某些内容类型(html,xml等)响应HTTP响应,您可以使用WebRequest(或更具体地说是HttpWebRequest)调用。请参阅this article以便快速入门。

除此之外,您还有另一个名为WebClient的助手类可以帮助您。