特集
VS 2008&.NET Fx 3.5概要(前編)

Visual Studio 2008に搭載された17の新機能

デジタルアドバンテージ 一色 政彦
2007/12/19
Page1 Page2 Page3 Page4

Windowsアプリケーションの新機能と新型アプリケーション

新機能10: クライアント・アプリケーション・サービス

 これまでASP.NETでは、ログイン機能やロール管理機能、プロファイル管理機能が提供されており、これらの機能により、利用するユーザーに応じた処理や画面表示が可能となっていた。VS 2008では、これらの機能をWindowsアプリケーション(とWPFアプリケーション)からアクセスして利用できるようにするための「クライアント アプリケーション サービス」という機能が追加された。この機能は、プロジェクト・プロパティの[サービス]タブから簡単に利用できる。

クライアント・アプリケーション・サービス

 また、クライアント・アプリケーション・サービスでは、ローカル・データ・キャッシング機能が提供される。これにより、アプリケーションをオフライン実行させることが可能になる。ただし利用に際しては、サーバにSQL Sever、クライアントにSQL Server Compact Edition 3.5が必要となる(Compact EditionはAccessのようなファイル・ベースの軽量データベース・エンジン。無償)。

 ローカル・データ・キャッシングを利用するには、[新しい項目の追加]ダイアログから[ローカル データベース キャッシュ]テンプレートで.syncファイルを新規作成すればよい。その際、次のようなウィザードが表示される。

ローカル・データ・キャッシング
クライアントとサーバにおけるデータの同期内容を構成しているところ。

 ローカル・データ・キャッシング機能のサーバとクライアントの同期機能には、「Google対抗なのか?! Microsoft Sync Frameworkの正体」で紹介したSync Frameworkの一部(Synchronization Services for ADO.NET)が活用されているようだ。

新機能11: レポート・ウィザード

 VS 2008では、以前からあったレポート作成機能(ReportViewerコントロール)が強化され、新たに「レポート アプリケーション」(Windowsアプリケーション)と「ASP.NET レポート Web サイト」の2つのプロジェクトが追加された。[新しいプロジェクト]ダイアログを開くと、[レポート アプリケーション]テンプレートが、[新しいWebサイト]ダイアログに[ASP.NET レポート Web サイト]テンプレートが追加されている。

 例えばレポート・アプリケーションのプロジェクトを新規に作成しようとすると[レポート ウィザード]が表示され、それに従うだけで、レポート定義(.rdlcファイル)とReportViewerコントロールを貼り付けたフォーム(.cs/.vbファイル)などを含むプロジェクトが作成できる。次の画面は[レポート ウィザード]の1ページである。

[レポート ウィザード]におけるレポートの種類の選択

新機能12: WPFアプリケーションのデザイナ

 .NET Framework 3.0からの新機能であるWPF(Windows Presentation Foundation)のデザイナが、ようやくVS 2008からIDEで標準サポートされた。これまでデザイン・ツールがExpression Blendしかないために、WPFの開発をちゅうちょしていた開発者も安心してWPFに取り組めるようになるだろう。

 VS 2008では、次の4種類のWPF関連プロジェクトが用意されている。

  • 「WPF アプリケーション」(.xaml/.exeファイル)
  • 「WPF ブラウザ アプリケーション」(.exe/.xbapファイル)
  • 「WPF ユーザー コントロール ライブラリ」(.dllファイル)
  • 「WPF カスタム コントロール ライブラリ」(.dllファイル)

 次の画面は、WPFアプリケーションのプロジェクトを新規作成して、WPFデザイナ画面を開いたところだ。

WPFアプリケーションのプロジェクトのWPFデザイナ(.xamlファイル)

 WPFブラウザ・アプリケーション(=XBAPアプリケーション)は、Webブラウザで利用するタイプのWPFアプリケーションで、IEだけでなくFirefoxでも利用可能だ(.NET Framework 3.5から)。ただし、セキュリティを確保するために、「インターネット」か「ローカル イントラネット」の部分信頼モードでしか実行できない。WPFブラウザ・アプリケーションの配布はClickOnceの仕組みを使って行える。次の画面はWPFブラウザ・アプリケーションを発行ページから実行する例だ。

([ファイル名を指定して実行]をクリック)
(アプリケーションがロード・実行される)
ClickOnceの発行ページから実行したWPFブラウザ・アプリケーションの例

新機能13: Windowsフォーム内でのWPFコントロールの利用

 先ほど説明したようにVS 2008ではWPFのデザイナが追加されたが、だからといって一気にWPFアプリケーションに移行するのは、まだ現実的ではない。だが、次の時代に備えるために、移行は徐々にでも進めたい。そういった場合には、既存のWindowsフォーム内にWPFコントロールを載せて、見た目から徐々にWPFに対応していく方法が取れる。VS 2008では、このようなWindowsフォーム内にWPFコントロールを配置することも、シームレスに実現できる。厳密にいうと、WPFユーザー・コントロールを作成し、それをWindowsフォーム内にホスト(=配置)することが可能である。

Windowsフォーム内でのWPFコントロールの利用
ElementHostコントロールにより、WPFユーザー・コントロールをホスト(=配置)できる。

新機能14: Visual Studio Tools for Office

 VS 2005までは別売りで提供されてきた「Visual Studio Tools for Office」(以降、VSTO)。VS 2008からはProfessional Edition以上のエディションで標準提供されることになった。これまで別途購入する必要性から、VSTO開発に興味がなかった読者も、ぜひ試してみることをお勧めする。

 VS 2008のVSTOの機能強化ポイントはClickOnce対応である。VSTOで大きな問題となっていたのは、展開時のクライアントのセキュリティ設定の大変さである。それが今回のClickOnce機能により解消できる。次の画面は、アドインをClickOnceで発行し、イントラネットから実行してインストール完了するまでの例である。

([今すぐ発行]すると、次のようなファイルが配置される)
(イントラネット経由で「ExcelAddIn3.vsto」を呼び出す)
([インストール]ボタンをクリックする)
ClickOnceによるVSTOソリューション(アドイン)の配布

 なお、Office 2003と2007を混在させた環境では、プロジェクト作成に失敗することがあるので注意してほしい。

 最後にIDEやアプリケーション以外の新機能について簡単に触れておこう。


 INDEX
  [特集]VS 2008&.NET Fx 3.5概要(前編)
  Visual Studio 2008に搭載された17の新機能
    1.Visual Studio 2008 IDE全体の新機能
    2.ASP.NET Webアプリケーションの新機能
  3.Windowsアプリケーションの新機能と新型アプリケーション
    4.そのほかのプロジェクトにおける新機能とVS 2008の情報


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間