0

Simple.OData アダプターを使用して、OData サービスに接続しようとしています。サービスが接続するには認証が必要です。リクエストを行う前に必要なヘッダーを設定するために、BeforeRequest イベントを登録しました。

ただし、資格情報が不足しているため、コードがハングして永久に待機するため、BeforeRequest がまったくトリガーされず、Context を開くことができません。

以下のコードを参照してください。何か不足していますか?

public void GetData()
{
             var oDataFeed = new ODataFeed(ApiBaseUrl);
            oDataFeed.BeforeRequest += BeforeRequest;
            oDataFeed.AfterResponse += AfterResponse;

            Context = Database.Opener.Open(ApiBaseUrl);
            // do some more
}

private void BeforeRequest(HttpRequestMessage httpRequestMessage)
{
  // add headers.
} 

イベントが一度発生またはトリガーされたように見えましたが、プロジェクトの再構築後は機能しなくなりました。

4

1 に答える 1

0

Simple.Data.Client 3x には、特定のシナリオでのリクエストの傍受に影響する既知のバグがあります。このバグは、Simple.OData.Client の今後のバージョン 4 で修正されています。現在はプレリリースとして提供されていますが、非常に安定しており、JSON ペイロードや OData プロトコル V4 のサポートを含む多数の新機能が付属しています。

于 2014-11-05T09:01:15.227 に答える