Как использовать REST API в ASP.Net 3.5? - PullRequest
0 голосов
/ 29 ноября 2010

Мне дали базовую документацию по REST API RazorGator, и я должен включить ее в сайт ASP.NET 3.5.Я создал свой файл класса для вызова API, который содержит мой WebRequest.Create («URL TO API»).Как я могу сделать вывод доступным, чтобы его могли использовать другие страницы?То есть странице tickets.aspx необходимо получить выходные результаты этого вызова API.Какие конструкции я должен использовать, чтобы сделать это доступным в tickets.aspx?

Спасибо!

Редактировать Вот код, который я написал до сих пор:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.IO;
using System.Net;
using System.Text;

namespace SeatEater.Web.UI.search
{
public class RazorGatorService
{

    HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://api.razorgator.com/ticketservice/ticets.xml?blahblah") as HttpWebRequest ;
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    Stream receiveStream = response.GetResponseStream();
    StreamReader readStream = new StreamReader(receiveStream, encode);
    response.close();
    readStream.close();

}

}

Я получаю сообщение об ошибке:

A field initializer cannot reference the nonstatic field, method, or property 'field'

во второй строке вышеуказанного кодового блока.Я очень новичок в использовании HttpWebRequest и HttpWebResponse.Можете ли вы посоветовать мне, как исправить полученное сообщение об ошибке?

Спасибо!

1 Ответ

4 голосов
/ 29 ноября 2010

Я бы создал простой класс, например " RazorGatorResult.cs ", который содержит различную информацию, возвращаемую из API.(или, точнее, только та информация, которая вам нужна).

Затем вы можете создать сборку " RazorGatorService " в своем приложении, на которую ссылается веб-приложение.

" RazorGatorService " будет отвечать за вызов API и гидратацию необработанного HTTP-ответа (будь то HTML, JSON, XML и т. Д.) В строго типизированный " RazorGatorResult «объект, который может использоваться веб-уровнем.

Тогда любая страница может просто позвонить через эту службу:

using RazorGatorService; 

RazorGatorResult result = RazorGatorService.GetSomeFunkyStuff();

Это имеет 3 преимущества:

1 -Вы можете вызывать API в любом месте вашего веб-приложения.

2 - Фактическая реализация (HTTP-вызов, десериализация) абстрагируется

3 - Вы можете поддерживать / настраивать кодотдельная сборка, и не влияет на ваш веб-уровень.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...