VSTO Web サービス連携 その3
さて、今回はいよいよ、VSTO で Web サービスを利用する方法について、ご紹介したいと思います。
3. VSTO における Web サービスからのデータ取得
手順:
1. VS を起動し、Excel ブックのソリューションを開きます。
2. [データ]-[新しいデータソースの追加]を選択します。
3. データソースの構成ウィザードで[サービス]を選択し、[次へ]をクリックします。
4. アドレスに先ほど、作成した Web サービスの URL を入力し、[移動]をクリックします。
※ここでは、例として、https://localhost/WebSite2/Service.asmx にしています。
5. [サービス]で "ServiceSoap"を選択し、[OK] をクリックします。
6. データ接続ウィザードが終了しますので、[完了]をクリックします。
7.IIS で https://localhost/WebSite2 の匿名認証を有効にします。
8. [データソース]でサービス参照として追加したビュー(vAdditionalContactInfo)を Excel シートにドラッグアンドドロップします。
※データソースをドラッグアンドドロップすることで、テーブル領域として認識され範囲に名前が付与されます。
ここでは、"VAdditionalContactInfoListObject" というテーブル名になっており、コードを書く際にオブジェクトとして利用可能です。
Excel の[デザイン] の[プロパティ]タブで確認可能です。
9. Sheet1.vb の Start Up イベントに以下のコードを記載します。
Dim ws As New ServiceReference1.ServiceSoapClient
VAdditionalContactInfoListObject.DataSource = ws.ContactInfo.vAdditionalContactInfo
10. ここでデバッグします。
以下のように情報を取得可能です。
このようにVSTO の利用により、必要最小限のコードで Web サービスから情報を取得することが可能です。
以外と簡単ですので、是非、皆様も一度、お試しください。