私はライブラリを使用しており、基本的には OData クエリから取得し、そこからデータベースを構築し、レコードを挿入するMicrosoft.Data.OData
プログラムを構築したいと考えています。DataTable
これは動的である必要があるため、サービス参照は機能しません。
MSDN のドキュメントを 2 時間検索してふるいにかけた後も、私の質問に対する解決策はまだ思いつきません。
これまでの私のコードは以下のとおりです。自分のパーサーを作成せずにクエリの結果を読み取れるようにする関連クラスHttpWebRequest
から、または関連するクラスを取得した人がいるかどうか、およびそれらがどのように正確に実行したかを知る必要があります。ODataReader
public class ODataPuller
{
private readonly Uri uri;
public ODataPuller(Uri uri)
{
this.uri = uri;
}
private async Task<HttpWebResponse> MakeRequestAsync(string filter)
{
filter = "?$filter=" + filter;
Uri target = new Uri(this.uri, filter);
HttpWebRequest request = HttpWebRequest.CreateHttp(target);
request.Headers["Accept"] = "application/xml";
HttpWebResponse response = await request.GetResponseAsync() as HttpWebResponse;
return response;
}
public async Task<DataTable> GetDataTableAsync(string filter)
{
HttpWebResponse response = await this.MakeRequestAsync(filter);
Stream stream = response.GetResponseStream();
// Turn this stream into something nice
}
}