Можем ли мы вызвать страницу aspx, которая является частью веб-службы, через веб-приложение + потреблять ответ веб-страницы с другой страницы



Я написал образец веб-службы, состоящей из определенных страниц .aspx. Я написал код для использования веб-методов из этой веб-службы.
Теперь можно загрузить страницу aspx, которая является частью веб-службы, из вызывающего веб-приложения, то есть с другой страницы aspx, которая находится за пределами веб-службы.

Каков этот сценарий;
1. У меня работает одно веб-приложение со страницей, например, Page1.aspx в браузере.
2. Я создал веб-службу, у которой есть страница aspx, например, Page2.aspx.
3. На странице Page1.aspx есть кнопка.
4. Теперь, когда клиент нажимает кнопку, можно ли загрузить страницу Page2.aspx, которая является не частью веб-приложения, а веб-службы.

Пожалуйста, помогите мне в этом сценарии. Я искал в Google, но не нашел правильного решения.
Пример кода, который я написал;
Метод веб-службы;

           [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 - это тот, кто общается с веб-сервисом. Его страница загружается;

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


Я пытаюсь получить ответ, полученный в Gen.aspx, и передать его на страницу default.aspx. Может ли кто-нибудь помочь мне в этом?


Заранее спасибо.

С уважением,
Виджай


person Vijay Balkawade    schedule 17.11.2010    source источник


Ответы (1)


Когда вы говорите, что страница aspx является частью веб-службы - что вы имеете в виду? Предполагая, что это обычная страница, которая при вызове через HTTP GE / POST отвечает HTTP-ответом с некоторым типом содержимого (html, xml и т. Д.), Вы можете использовать WebRequest (или, точнее, HttpWebRequest). См. эту статью для быстрого начала.

Кроме того, у вас есть еще один вспомогательный класс под названием WebClient который может вам в этом помочь.

person VinayC    schedule 17.11.2010
comment
Привет, Винай, Этот ответ действительно полезен. Спасибо за детализацию. - person Vijay Balkawade; 24.11.2010