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

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

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

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

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

次の例では、サービスURLは、DataFileNameパラメータにXMLデータファイル(ストレージ内に存在)を取り、Typeパラメータに目的のファイル形式としてcsvを取ります。指定された10RowsData.xmlという名前のXMLデータファイルは、ホストされるサービスのルートフォルダに存在します。

手順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=csv&datafilename=root%2F10rowsdata.xml"
            : C1TextBox1.Text;
        WebRequest request = WebRequest.Create(apiURL);
        WebResponse response = request.GetResponse();
        var fileStream = File.Create("D:\\ExcelfromStorage.csv");      
        //ここで指定したファイル形式は要求された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="csv" />
            <br />
            <label for="datafilename">Xml data file:</label>
            <input type="text" id="datafilename" name="datafilename" value="root/10rowsdata.xml" />
            <input type="submit" value="Generate Excel"/>
    </form> 
    

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

先頭に戻る

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

WinFormsアプリケーション

HTMLアプリケーション

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

先頭に戻る