地図を生成する基本的な流れは、Windowsフォームの場合と同じです。 Windowsフォームでのプログラムと大きく違うのは、SharpMap.Web.CachingクラスのInsertIntoCacheメソッドを呼び出していることです。これによって、生成した画像をASP.NETのキャッシュ領域に登録できます。InsertIntoCacheメソッドの引数では、キャッシュに保存する時間(分単位)とキャッシュ対象画像を指定できます。このメソッドを実行すると、キャッシュを取り出す時に必要なIDを取得できます。 キャッシュに登録した地図を表示するには、Web.configで設定したURL(GetShow.aspx)を、ImageButtonコントロールのImageUrlプロパティに指定します。そしてクエリ文字列「id」にInsertIntoCacheメソッドの戻り値を設定します。 このキャッシュとHTTPハンドラの利用によって、SharpMapでは地図イメージを物理ファイルに保存することなく、簡単にブラウザに表示することができます。 なお、Webアプリケーションで、もっと高機能な処理を実装したい場合には、ビューステート等に現在の情報(ズーム率やセンター位置等)を保存しておき、ポストバックする度にその値を再取得すると良いでしょう。

まとめ

携帯電話やカーナビの利用者の増加、またLive Search MapsGoogle Mapsの普及からもわかるように、地図を使ったアプリケーションは、とても身近で人気の高いものになってきました。 今後、地図機能を組み込んだアプリケーションを作る機会が増えていくと思いますので、その時には、SharpMapの利用も考慮に入れてみてください。また、CodePlexではSharpMapのバージョン2.0系のリリースに向けた開発も行われています。2.0系では地図データの更新など様々な機能追加も検討されているようですので、今後のSharpMapにも注目してみてはいかがでしょうか。