それでもSystem.Web.Silverlightを使いたい場合は
Silverlight 2のプロジェクトをVisual StudioのアップグレードウィザードでSilverlight 3にバージョンアップした場合は、ホストするサーバープロジェクトのbinディレクトリにSystem.Web.Silverlight.dllがコピーされるため、そのまま利用することができます。
これ以外の場合でもobjectタグを直に記述するのではなく、ASP.NETのサーバーコントロールとして扱いたいという場合があると思います。その場合はCodePlexのASP.NET Projectsからダウンロードして利用することができます。
Silverlightのマルチターゲット機能
Silverlight 3 Toolsをインストールする場合、前述したようにSilverlight 2 Toolsがインストールされている場合は自動的にアンインストールされてしまうため、2と3のToolsを同居させることはできません。このため、Visual Studio 2008を利用したSilverlightの開発では都度Toolsのインストール/アンインストールを行う必要があります。
これに対しVisual Studio 2010(現在の最新バージョンはBeta1)では、Silverlightのプロジェクトを作成するタイミングでそのプロジェクトではSilverlightのどのバージョンを利用するのかを選択することができるようになります。(図6)
Expression Blend 3
次にSilverlightのデザインツールであるExpression Blend 3ですが、Silverlight 3のリリースと同時期に正式版がリリースされ、現在はMSDN会員であれば日本語版のExpression Blend 3をMSDNサブスクリプションからダウンロードし利用することができます。
Expression Blendの新しく追加されたスケッチフローやデモデータのバインド、追加されたコントロールについては、次回以降に紹介する予定です。
まずはExpression Blendに触ってみたいという方は、60日限定のExpression Blend 3の試用版をダウンロードして試用することが可能です。
周辺技術
Silverlight本体以外にもSilverlightでの開発を助けてくれるコントロールやライブラリ、フレームワークが存在します。ここでは軽くSilverlightを取り巻く周辺技術について触れておきましょう。
Silverlight Toolkit
CodePlexで開発が進められているSilverlightのカスタムコントロールを集めたライブラリです。入力コントロールだけでなくグラフ用のビジュアルなコントロールも多く業務アプリケーションの開発には欠かせないコントロール集です。
Silverlight Toolkitで完成度が高いコントロールに関してはSilverlight 3本体にマージされることからも、Silverlightで将来的にサポートされる新しいコントロールの集まりという見方もできます。
ライブデモではどのようなコントロールが含まれているかを実際に体験することができます。
.NET RIA Services
Silverlightアプリケーションからデータベースサーバーのデータにアクセスする場合、WCFやWebServiceといったサービス経由でサーバーのデータベースにアクセスする必要があります。
.NET RIA Servicesはデータアクセスを単純化しSilverlightなどでn層アプリケーションの開発をスムーズに行うことを目的としたフレームワークです。現在最新版であるJuly Preview版ではSilverlightのみのサポートですが今後のバージョンアップでWPFやMVCフレームワーク、ASP.NET AJAX、Dynamic Data、Windows Formなどでサポートされ、今後のマイクロソフトのアプリケーション開発の根幹になることが予想されます。
現在のところ英語版のVisual Studio 2008にしかインストールできませんが、マイクロソフト のエバンジェリストの大西氏のブログで日本語版のVisual Studioでも利用する方法が掲載されています。
.NET RIA Services に関しては本連載の後半で解説を予定しています。
Unity Application Block 1.2 for Silverlight - December 2008
本連載では詳しく触れませんが、マイクロソフトのpatterns & practicesチームが提供するSilverlightに対応したDIコンテナです。UnityのDIコンテナを利用することでクラスの差し替えが容易になり、ユニットテストを効率よく行うことができるようになります。
Composite Application Guidance for WPF and Silverlight - February 2009
こちらも本連載では詳しく触れませんが、Silverlightの各部品をコンポジットに開発することでテストの容易性を確保したり、モジュール間の結合性を弱くするためのフレームワークです。
英語ですが「Prism for Silverlight」というビデオを見ると概要を確認することができると思います。
まとめ
今回はSilverlight 3の概要と開発環境の整備について駆け足で解説をしてきました。次回以降各機能の解説に入っていきますが、マイクロソフトのマジックナンバー3のジンクスを裏切らない機能の充実度に説明にも力が入ります。では、次回もよろしくお願いします。