ASP.NET Web API コントロール
ストレージ内のデータソースからExcelを生成
サービス > Excelサービス > Excelサービスの生成 > ストレージ内のデータソースからExcelを生成

このセクションでは、クライアントアプリケーションを通してWeb APIサービスを呼び出し、ストレージ(リモートストレージまたは同じサーバー内のストレージ)内に存在するデータセットまたは.NETコレクションからExcelファイルを生成する方法を具体的に示します。

手順1:サービスを呼び出す

手順2:クライアントプロジェクトを実行する

次の例では、Web APIサービスをHTMLおよびWinFormsクライアントアプリケーションから呼び出します。これらのクライアントはサービスにGET要求を送り、サービスは応答ストリームを返します。これにより、この応答ストリームは目的のExcelファイル形式で保存されます。

次の例では、サービスURLはDataNameパラメータにデータセット/コレクション(ストレージ内に存在)の名前と場所を取り、Typeパラメータに目的のファイル形式であるxlsを取ります。Productsという名前の指定されたデータセットは、ホストされているサービスのNwindフォルダ内に存在しています。

手順1:サービスを呼び出す

Web APIサービスを呼び出すには、次の手順を実行します。

  1. REST APIサービスに対するクライアントの設定」の説明に従ってWinFormsアプリケーションを作成します。1つのC1Label、1つのC1TextBox、および1つのC1Buttonコントロールを追加します。フォームが次のように表示されます。
      
  2. 以下に示すように、お使いのWinFormsアプリケーションのフォームクラスにメソッド(たとえば、GetExcel())を定義して、サービスアプリケーションを呼び出します。
    C#
    コードのコピー
    public void GetExcel()
            {
                var apiURL = string.IsNullOrEmpty(C1TextBox1.Text) ? "http://demos.componentone.com/ASPNET/C1WebAPIService/api/excel?FileName=excel&type=xls&dataname=Nwind%2FProducts" : C1TextBox1.Text;         
                WebRequest request = WebRequest.Create(apiURL);
                WebResponse response = request.GetResponse();
                var fileStream = File.Create("D:\\ExcelfromStorage.xls");  //ここで指定したファイル形式は、要求URLで指定された形式と同じである必要があります。
    response.GetResponseStream().CopyTo(fileStream);
            }
    

  3. [Excelの生成]ボタンのボタンクリックイベントで、GetExcel()メソッドを呼び出します。
  1. REST APIサービスに対するクライアントの設定」の説明に従ってHTMLアプリケーションを作成します。
  2. HTMLページの<body>タグ内の<form>タグに、以下のマークアップを追加します。
    HTML
    コードのコピー
    <form action="http://demos.componentone.com/ASPNET/C1WebAPIService/api/excel" method="GET">
            <label for="fileName">File Name:</label>
            <input type="text" id="fileName" name="fileName" value="ExcelfromStorage" />
            <br />
            <label for="fileFormat">File Format:</label>
            <input type="text" id="fileFormat" name="type" value="xls" />
            <br />
            <label for="DataName">Data Name:</label>
            <input type="text" id="DataName" name="DataName" value="Nwind/Products" />
            <input type="submit" value="Generate Excel"/>
    </form> 
    

    GET要求に関して、<form>タグのmethod属性にGET、およびそのaction属性にサービス要求URLを設定したことに注意してください。また、HTMLページで入力コントロールを作成し、各種のパラメータを指定して、ストレージ内に存在するデータセットから目的のExcel形式でExcelファイルを生成します。

先頭に戻る

手順2:クライアントプロジェクトを実行する

WinFormsアプリケーション

HTMLアプリケーション

以下に示す、ストレージで使用可能なデータソースからExcelを生成するREST APIサービスのデモサンプルをご覧ください。

先頭に戻る