1

私は Web サービスと ASP.Net を初めて使用します。

特定の都市のホテルを取得しようとしています..サービス参照の追加を使用しました..

  1. XML スキーマを受け入れませんでした ( http://api.ean.com/ean-services/rs/hotel/v3?_wadl&type=xml&apiKey=[xxxYourAPIkeyxxx]) Soap WSDL を受け入れました ( http://api.ean.com/ean-services/rs/hotel/v3?_wadl&type=xml&apiKey=[xxxYourAPIkeyxxx])

  2. その後、クラスにアクセスできましたが、リストを返す方法やメソッドを呼び出す方法がわかりませんフォームを作成しようとし、アクションをhttp://api.ean.com/ean-services/に設定しましたドキュメントに記載されているws/hotel/v3/

<form runat="server" action="http://api.ean.com/ean-services/ws/hotel/v3/">
<asp:Button ID="Button1" runat="server" onclick="Unnamed1_Click"/>
</form>

これは、エラー 403 開発者非アクティブの XML を返します

EAN Web サイトのアプリケーションに自分の IP アドレスを追加しました

チュートリアル、例、または説明のいずれかで私に与えることができる助けが必要です

4

2 に答える 2

1

サービス参照を追加した後、defualt.aspx にフォームとボタンを作成しました

<form runat="server">
<asp:Button ID="button3" runat="server" OnClick="button3_Click" />
</form>

ボタンは、defualt.aspx.cs のメソッド button3_Click を呼び出します (ExpediaAPIShared は、サービスを追加したときにサービスに付けた名前です)

  ExpediaAPIShared.HotelServicesClient client = new HotelServicesClient();
  ExpediaAPIShared.HotelListRequest hotelListRequest = new HotelListRequest();
  ExpediaAPIShared.HotelList hotelList = new HotelList();
  ExpediaAPIShared.HotelListResponse hotelListResponse = new HotelListResponse();
  client.Open();
  hotelListRequest.apiKey = "6ppdh333hagfauy5724hdggn";//use ur own key
  hotelListRequest.cid = 55505; //this is the CID for testing
  hotelListRequest.city = "Riyadh";
  hotelListRequest.datelessSupplierSort = true;
  hotelListResponse = client.getList(hotelListRequest);
  hotelList = hotelListResponse.HotelList; 
    for (int i = 0; i < hotelList.size; i++)
    {
        Response.Write(hotelList.HotelSummary[i].name);
        Response.Write("</br>");
   }

オブジェクトの値が null のままになり、その属性に値を追加できないため、各タイプを開始する必要がありました。

このコードは、リヤドのホテルの名前のみを返します..

于 2012-10-13T00:07:05.300 に答える
0

API ドキュメントを見ずに質問に答えることは困難です。ご質問のとおり、Expedia API は 2 つのアクセス方法をサポートしているようです。1 つは SOAP 呼び出し (WSDL ファイルへのサービス参照の追加を行う場所) によるもので、もう 1 つはフォーム POST によるものです。どちらかを使用する必要があります。サービス参照の追加がおそらく最も簡単です。Add Svc Ref が生成したファイルを見ると、名前が「...Client」で終わるクラスがあるはずです。そのクラスのインスタンスを作成するだけで、サービスのメソッドが含まれます。http://www.telerik.com/help/wpf/using-data-wcf-service.htmlにチュートリアルがあります。

于 2012-10-11T21:38:53.837 に答える