Hiroshi Okunushi's Blog ☆ミ| IIS PHP etc.

IIS7, PHP on IIS を中心とした情報発信ブログです。

February, 2011

  • 【MEMO】 WebMatrix のポジショニング

    今 面白いことやってまして、何人かの Web 系のエバンジェリストでそれぞれ WebMatrix 用の資料のパーツをそれぞれブログで書いています。

    私のパートは以下になります。

    ■WebMatrix のポジショニング
    ■WebMatrix の環境準備

    ということで早速 (^_^)/


    ■ WebMatrix のポジショニング

    WebMatrix は Web サイトの開発を行う際に必要となる機能をひとつのツールにまとめた、マイクロソフトの新しい Web 開発ツールです。オープンソース Web アプリケーションや Web サイトのテンプレートを使って簡単に Web サイトの構築を始めることができます。また、自分でいちから Web サイトを開発することも可能です。WebMatrix は Web サイトの開発に必要な機能をかねそなた非常にシンプルな無償のツールです。WebMatrix により Web サイトの開発はかつてないほど簡単になります。

    〇 マイクロソフトの Web プラットフォーム

    マイクロソフト製品で Web テクノロジーを使用したシステムを作る際には多くのテクノロジーが関連しているため、全体像を把握しておくことでどういう選択をするのがベストなのかが以前にも増して重要になっています。マイクロソフトではよく「プラットフォーム」という言い方をしますが、この表現はマクロ視点で見た全体像とご理解ください��WebMatrix のポジショニングを理解する上でもとても大事です。

    image

    動的なコンテンツを含む Web システムでは、図に表されているようにインターネットブラウザー、開発ツール、Web サーバー、アプリケーション ランタイム、データベースに加えとりまきの関連テクノロジーが必要です。必要となる知識という意味ではもっと広範囲に及びます。例えば HTML、CSS などいわゆる Web ページを構成するテクノロジーもそうですし、サーバー側においてはページで利用される OS の周辺機能であるネットワークや場合によってはメールなどの知識も必要になります。

    このポジショニングの説明では図にある Web アプリケーションの主要テクノロジーや製品に関する整理をします。

    〇 マイクロソフトの Web 開発ツール

    WebMatrix は新しい Web 開発ツールです。マイクロソフトは今までも Web アプリケーションを開発するためのツールを出荷してきていますのでそれらとどういうポジショニングの違いがあるのかも知っておくとよいでしょう。

    image

    歴史を紐解くとマイクロソフトは OSの様々な機能および Internet Explorer を通じて特に Windows 95 以降においてインターネットが存在する世界を前提とした色々なテクノロジーを提供してきました。インターネットの原点とも言える静的なページを作るための HTML/CSS への対応はもちろん、1996年には Active Server Pages (ASP)というアクセスしたユーザーの操作に応じた動的なコンテンツを生成するためのテクノロジーを発表しました。

    マイクロソフトは 2000年 に .NET 構想を打ち出し、プラットフォームが開発をさらに支援し、さらに素晴らしいアプリケーションやシステムを開発するための基盤提供を開始しました。それからの十年はテクノロジーがどんどん進化し、時には新幹線のようなスピードで進んで行きました。

    プロフェッショナルな開発者の方にはチーム開発や大規模用途で利用する統合開発環境として Visual Studio はバージョンを重ね、最新は Visual Studio 2010 となって、ご好評いただいています。大規模向けの Visual Studio の入門用でかつ Web 開発に特化したものとして Visual Web Developer 2010 Express もあり、こちらは無償でご利用いただけるため、インターネット、社内システムなどを問わず、プロフェッショナルな開発の道を進む方に数多くご利用いただいています。

    一方で、インターネット Web の世界ではページのデザインや Web アプリケーションをより早く、効率的に作っていくという潮流が生まれ、現在では多くのオープンソース Web アプリケーションが人気となっています。

    マイクロソフトはデザイナーやマークアップを主とした仕事をなさっている方には Expression という新しいブランドでデザインツール、美しい Web ページを作るためのツール、動画を取り扱うツールを提供し、現在は 4 つ目のバージョンを迎え、おかげさまで次第にユーザーが増えて行っています。

    Visual Studio と Expression Studio では「動」と「静」をしっかりと受け止めた製品になっているものの、ASP のような動的なサイトを作るためのスクリプティングをベースとしたテクノロジーや PHP の世界で多く行われてきた素材となる Web アプリケーションをベースとした開発という方法論に対してはまだまだできることがある状況でした。そこで登場してきたのが WebMatrix になります。

    インターネット Web アプリケーションを作る工程を見ると、ページ デザイン、素材の取り込み、動的な要素の開発、データベースの取り扱い、チューニング そして最後に出来上がったもののサーバーへのアップロードあるいは発行操作があり、実態としては様々なツールの組合せでこれを実現している方が多いのです。これらを一つのツールで容易にできないか、そういう研究がここ数年の間行われてきた成果、それが WebMatrix になります。

    「静」的なページを作ってきた方が、もっと「動」的な Web アプリケーションを作ることを始めるためのツール、ASP や PHP に慣れ親しんだ方がもっとお手軽に環境を作ったり、開発を行うためのツール、それが WebMatrix になります。

    〇 Web Platform Installer と WebMatrix

    開発ツールとは別の次元で、マイクロソフトのオープンソース Web アプリケーションに対する姿勢が 2007 年ごろから大きな転換期を迎えました。前述のように CMS、Eコマース、SNS などの数々のエリアで著名なオープンソース Web アプリケーションがよく利用され、さらにプラグインやテンプレートのような活用術が普通に使われるようになっています。Windows や インターネット インフォメーション サービス(IIS)でも手軽にできる方法を提供できないか、そう考えた人たちがレドモンドの製品開発部門に何名もいました。

    まず最初に生まれたのが、Windows Web Application Gallery です。

    image

    Windows と IIS 上で快適に動作できるオープンソース Web アプリケーションのギャラリーです。マイクロソフトがホストしているものですが、ASP.NET ベースのものだけでなく、著名な PHP アプリケーションの登録も数多く存在します。

    そしてギャラリーにリストされているアプリケーションを実際にスムーズに環境構築を行える統合インストーラー、それが Web Platform Installer(Web PI)になります。

    image

    一言で言ってしまうと、「アプリケーションをインストールする」ことができるインストーラーです。Web サーバー、データベース、開発ツール などのパーツのインストールも個別にできますが、あくまでも Web PI の主目的は円滑に様々な依存関係も解決しながらオープンソース Web アプリケーションをインストールすることです。

    そして、WebMatrix はこの Web PI のエンジンを使っているのです。

    image

    起動して最初のページを見てみましょう。カレンダーなどのいわゆるテンプレートを使うこともできるのですが、Web PI の仕組みと連動した環境作りこそが WebMatrix の真骨頂です。

    image

    〇 2種類の Web サーバー

    WebMatrix、Web PI ともに前提となる Web サーバーは IIS です。ただし、WebMatrix の登場とともに軽量な IIS が同時に登場しており、IIS Express と呼ばれています。Web PI は OS 付属の IIS とこの IIS Express いずれに対してもインストール作業ができるのに比べ、WebMatrix の環境はあくまでも IIS Express で動作する前提です。

    image

    IIS Express のおおきなメリットは最新の IIS のコアエンジンを用いていることで、Windows XP などで環境を作る場合でもこれまでできなかった IIS7 の開発ができることです。ただし、あくまでも開発を行う環境の前提としてなので、IIS Express は運用に使うことは想定していませんし、アプリケーションをホストする Web サーバーに備えているべき様々な機能を搭載していません。

    この構造が少しわかりにくくて躓いている方がいらっしゃるようなのでこの点もふれておきます。

    〇 インターネット公開を支える仕組み

    一連の作業が終わった後は、本格的な開発環境に持って行くあるいはインターネットに公開するという流れになるはずです。 WebMatrix は優秀な発行機能を備えています。FTP での発行はもちろん、新しい Web 配置 (あるいは WebDeploy) という方式で、アプリケーションだけでなくデータベースも一緒にパッケージ化して展開することができます。

    image

    WebMatrix から WebDeploy 発行できるホスティングサービスについては Web ホスティング ギャラリーというもう一つのギャラリーがあります。FTP を使えばほとんどのサービスで利用できることでしょう。

    現在のところはマイクロソフトの クラウド サービスである Windows Azure に直接発行する機能は備えていませんが、将来の一つのオプションとして研究が進められています。

    =======================

    マイクロソフトの Web 関連製品の中での WebMatrix の位置づけ、Web Platform Installer との棲み分け、2つの IIS の大まかな違い を整理しました。ここまで押さえておけば、以降の説明がわかりやすくなるはずです。


    ということでポジショニングでした。わかりにくいところがあれば是非フィードバックをお寄せください!(^_^)/

  • 【TFセミナー】 金曜の遅い時間までありがとうございました!

    昨日の夜は TF セミナーにご参加いただき、本当にありがとうございました!

    金曜の夜に開催することにはいくつかのご意見があり、遅すぎるという声や逆にこの曜日と時間だと参加しやすいという声も多くて、実は悩みながら開催しています。どの TF セミナーの回でも結構ですのでぜひスタッフにそのあたりのお考えをお聞かせください。できるだけ皆さんの声を反映したセミナー運営をしていきたいと思います。

    昨日の資料は以下の TF セミナーのサイトでしばらくすると公開されます。http://www.microsoft.com/japan/powerpro/TF/seminar.mspx
    すごく多くの資料があるのでこれだけでなく他のも眺めてみてください!
    特に今回あまり踏み込まなかった Razor に関する話は 1/17 のセミナーの資料を確認ください。

    書式は PDF および XPS での公開になります。

    恒例のご紹介した URL 集をここに記載しておきます。

    WebMatrix 製品サイト
    http://www.microsoft.com/web/webmatrix
    ※実は当日に リフレッシュ版 が公開されたのでその詳細は別の投稿で書きます。

    Tech Fielders サイト
    http://www.microsoft.com/japan/powerpro/tf

    Expression 製品サイト
    http://www.microsoft.com/japan/products/expression/

    Expression のフル版を使いたいと思っていただいた方はもし条件が合致するかもなので以下もご覧ください。
    日本マイクロソフト、「WebsiteSpark」にてギフト券がもらえるキャンペーン

    Expression の評価版は60日タイマーつきのものがダウンロードできるので評価目的の方は以下へ。
    http://www.microsoft.com/japan/products/expression/try-it/default.aspx

    以前の ASP(Active Server Pages に関しては以下の投稿を参照ください。
    【IIS7】 資料2つほど SlideShare で公開しています

    .mdb を使っている人にぜひ今後検討して欲しい SQL Server Compact の開発チームブログhttp://blogs.msdn.com/b/sqlservercompact/

    Twitter は #webmatrixjp をウォッチしてください。


    リファレンスに掲載したリンク集。

    Microsoft Web Platform
    http://www.microsoft.com/web/

    WebMatrix ホームページ
    http://www.microsoft.com/web/webmatrix

    MSDN ASP.NET デベロッパーセンター
    http://msdn.microsoft.com/ja-jp/asp.net/default.aspx

    Microsoft Web 開発ガイドライン
    http://msdn.microsoft.com/ja-jp/asp.net/ff602016.aspx

    TechNet IIS テックセンター
    http://technet.microsoft.com/ja-jp/iis/default.aspx

    インターネット Web サーバー構築ガイドライン
    http://technet.microsoft.com/ja-jp/iis/ff625168

    Web PI の歩き方 by 武田正樹
    http://blogs.msdn.com/b/web_/

    monoe’s blog
    http://blogs.msdn.com/b/osamum/

    THE TRUTH IS OUT THERE
    http://blogs.msdn.com/b/chack/

    Days with Microsoft Web Platform
    http://blogs.msdn.com/b/tashinmu/

    ScottGu's Blog (英語)
    http://weblogs.asp.net/scottgu/default.aspx


    公開を待てない方のために SlideShare にもあげておいたので下記でご覧ください。

    ではでは。

  • 【MEMO】 WebMatrix リフレッシュ版がリリースされています。

    現在 英語しか情報がないのでここで翻訳しておきます。

    ※原文: http://www.microsoft.com/web/post/WebMatrix-refresh-released

    実は昨日はセミナーの直前でちょっとびっくりという状況でした。びっくり


    たった今、WebMatrix のマイナー リフレッシュ版をリリースしました。すぐに Web Platform Installer にて利用可能です。1月に公開して以降、お客様からご報告いただいたものを含む、いくつかの優先度の高い問題を解決したものを提供するためにこれをリリースします。

    WebMatrix に関するほかの問題やバグを発見された方はぜひお知らせください!スマイル

    詳細

    このリフレッシュ版で実装した修正のいくつかを以下に記載します。

    ・お客様報告:WebMatrix で United States – International キーボード レイアウトを使用している場合に英語以外の文字が入力された際に Ctrl+C/X/V が効かなくなる

    ・テンプレート インストーラーのリンクが切れている場合に例外が発生する

    ・Web 配置:Web PI から新しい MySQL のバージョンを利用した場合に、MySqlDump.exe パスが MySQL アプリケーションの命令で失敗する
    MySQL のバージョンが 5.1 で無い場合、発行が失敗する。

    ・Web 配置:リモート用にアプリケーションの インストールをする際に MySQL がローカルにインストールされていることを要求する動きになっていた

    ・SQL Compact を含んだアプリケーションを WebMatrix で利用する際に、Web 配置が dll のみをコピーするため、必要な .manifest ファイルが無いために配置がうまくいかない (HRESULT:0x800736B1)

    ・Web ホスティング を探す際の URL に 「spotlight=true」 を追加した

    ・スペイン語のテンプレートにおけるリソース ファイルに含まれる xml ファイル内容がおかしい

    ・マイ ドキュメントが がリダイレクトされている特定条件(共有にポイントしているマップされたドライブなど)場合に、IIS Express がうまく起動しない

    ・リモートにあるパスのために WebMatrix がセットし、IIS Express が読む新しい環境変数を追加し、ポーリングを行うようにした
    これはネットワーク共有やリダイレクトされたマイドキュメントのため。

    ・Redirection.config ファイルの復元パスが間違っている

    ・レジストリ キーの追加:PHP ファイルを開く際の既定値の設定変更(ローカル言語を UTF-8 に)
    HKLM\SOFTWARE\Microsoft\WebMatrix\UTF8FallbackForPHP 有効な値は 0 か 1
    起動時のコマンドライン パラメーターで指定も可能。
    WebMatrix.exe #ExecuteCommand# UTF8FallbackForPHP on (あるいは off)


    さらに英語版のフォーラムに載っているお知らせの内容も上記にマージしておきます。フォーラムの方の情報は蛍光ペン塗っておきます。
    IIS の開発チームで Web Deploy の開発担当だった Faith も今は WebMatrix 担当みたい。

    ※原文: http://forums.iis.net/t/1175775.aspx


    こんな感じです。

    日本語でのコンタクトはもちろん私のこのブログからでもいいですが、以下の方法でも我々が把握しますのでお知らせください。

    Twitter: #webmatrixjp をつけてつぶやく

    WebMatrix な話であれば、MSDN WebMatrix フォーラム
    http://social.msdn.microsoft.com/Forums/ja-JP/webmatrixja/threads

    Web PI や PHP の環境面な話であれば、TechNet PHP on Windows フォーラム
    http://social.technet.microsoft.com/Forums/ja-JP/phpwinja/threads

    よろしくお願いします! ジョーク

  • 【SQL】 SQL Server Compact 4.0 に関するリリース情報

    SQL Server Compact 4.0 に関する情報が今ちょっと少ない状況なので、開発チームのブログをここで翻訳しておきます。
    私の方で少し情報を付加しているのでそこは蛍光ペンを塗っておきます。
    また、そこまで専門的なエリアでもないので表現間違いなどがありましたら、ご指摘いただけるとありがたいです。

    ※原文:Microsoft SQL Server Compact 4.0 is available for download
    http://blogs.msdn.com/b/sqlservercompact/archive/2011/01/12/microsoft-sql-server-compact-4-0-is-available-for-download.aspx


    SQL Server Compact 開発チームから次のバージョンの Microsoft SQL Server Compact 4.0 がリリースされたことをお知らせします。WebMatrixWeb Platform Installer 3.0 あるいはダウンロード センターから入手可能です。

    SQL Server Compact 4.0 は昨年いっぱいをかけて設計・開発・テスト・チューニングされてきましたが、Microsoft MVP の方々や開発者コミュニティによって精力的に確認をいただいてきました。開発者コミュニティからのフィードバックのおかげで SQL Server Compact 4.0 リリースの製品クオリティを向上することができました。参画いただいた開発者コミュニティの皆さんに SQL Server Compact 開発チームからお礼申し上げます。

    SQL Server Compact 4.0 を利用する上でのバリュー ポイントとして提案するのは ASP.NET Web アプリケーションにおけるデータ ストアに利用できることです。少しお時間をいただき、SQL Server Compact 4.0 が適さないシナリオを確認ください。そのようなシナリオの場合には、 SQL Server Compact 3.5 SP2 が正しい選択になります。

    SQL Server Compact 4.0 を使用する理由:

    1. ASP.NET Web アプリケーションおよぶ Web サイトのデータベース:
      Compact 4.0 はASP.NET Webアプリケーション向けに最適化およびチューンされており、現場の試験を通過しています。目指したのは Compact 4.0 が Web サイトの立ち上げ時に利用するシナリオで、データベースのサイズが 4GB くらいまでスケール アップして処理できることです。 
      1. Microsoft WebMatrix の既定のデータベース:
        Compact 4.0 は
        Microsoft WebMatrix の既定のデータベースです。Microsoft WebMatrix は Web スタック全体を扱える製品で、ASP.NET・IIS Express・エディター・SQL Server Compact のようなテクノロジーをカプセル化したものです。これらは ASP.NET Web サイトを開発、テスト あるいは 展開を行うために必要で、サード パーティのホスティング サービスに発行が可能です。
      2. 無償のオープンソース Web アプリケーションを使用した迅速な Web サイト開発:
        mojoPortal, Orchard, Umbraco などのような人気のオープンソース Web アプリケーションは Compact 4.0 に対応しており、Web サイトを迅速に開発、テスト、展開が可能です。
      3. 部分信頼と仮想メモリー:
        Compact 4.0 は ASP.NET Web アプリケーションの主な展開シナリオである部分信頼で動作します。Compact 4.0 が使用する仮想メモリーはデータベースに対して 256 接続を許可することができるように最適化されています。
      4. SQL Server へのワン クリック移行:
        次第に Web アプリケーションの要件がエンタープライズ規模のデータベースの域まで成長した時に、スキーマとデータは WebMatrix 画面内の移行ボタンでワンクリックで Compact から SQL Server の他のエディションに移行できます。 これにより、XML 形式の web.config ファイルがプロジェクトに追加され、SQL Server への接続文字列が書き込まれます。移行が完了したあとは、Web サイトのプロジェクトはそのままシームレスに SQL Server を利用できます。
        ※Compact 4.0 のデータファイルはそのままバックアップとして残ります。
      5. ASP.NET Web アプリケーションで使用することをブロックするフラグを撤廃:
        ASP.NET Web アプリケーションに Compact を使用するには、これまでのバージョンの Compact では SQLServerCompactEditionUnderWebHosting というフラグをオンにする必要がありましたがなくなりました。
    2. 基盤部分の強化点 (インストール、展開、信頼性、暗号化アルゴリズム):
      Compact 4.0 の基盤は問題少なくインストールでき、容易に展開可能で、データのセキュリティを守りながら信頼性高く動作できるように強化されています。  
      1. 安定したインストール体験と小さなダウンロード サイズ:
        x86 と x64 プラットフォーム用に別々の MSI 星ファイルが用意されています。x64 版の MSI は WOW モードとネイティブ モードの両方に Compact のコンポーネントをインストールします。具体的には %Program Files (x86)%\Microsoft SQL Server Compact Edition\v4.0 および %Program Files%\Microsoft SQL Server Compact Edition\v4.0 の2か所になります。x86 版の MSI は x64 プラットフォームでインストールできなくしてあります。同様に、x64 版の MSI は x86 プラットフォームのみにインストール可能です。これによって安定したインストール体験になり、将来的に x86 版のたとえば サービス パックのインストーラーが x64 環境の GAC 登録されたアセンブリーの情報を新しいものに書き換えることを防げます。この問題は Compact 3.5 SP2 のリリースで報告され、
        サポート技術情報 974247 で詳細に説明されています。これらのインストール パッケージに関する改善を行った上で、Compact のダウンロード サイズは 2.5 MB に抑えることができました。
        星 MSI:マイクロソフト インストーラー向けのファイル形式で、.msi の拡張子を持ちます。
      2. 容易なプライベート配布:
        x86 と x64 Compact のアセンブリーや DLL は一つのフォルダーに集めてあります。具体的には %Program Files%\Microsoft SQL Server Compact Edition\v4.0\Private にあります。フォルダーの内容はアプリケーション ディレクトリにコピーすることができ、Compact を再配布することが可能です。x86 版および x64 版の MSI は両方とも x86 用および x64 用の アセンブリーや DLL を Private フォルダーに配置しますので x64 版の dll を入手するために x86 環境で x64 版の dll を個別に入手する必要はありません。SQL Server Compact のネイティブ DLL が正しく動作するためには Microsoft Visual C++ 2008 Runtime Libraries (x86 and x64) SP1 が依存関係で必要な点が注意点です。Visual C++ 2008 ランタイムのアセンブリーも Private フォルダーに入っています。したがって、Private フォルダーに入っているすべての DLL およびフォルダーを配布することで正しく Compact が動作するように再配布が可能です。
      3. より高い信頼性:
        ASP.NET Web アプリケーションはデスクトップ アプリケーションと比較するとワークロードの種類が異なります。星  Compact は立ち上げ時の Web サイトで利用できるようにテストされており、これにより以前のバージョンよりも信頼性が向上しています。
        星デスクトップ アプリケーションのユーザーは多くの場合一人ですが、Web アプリケーションは大勢の人にアクセスされる前提があり、同時実行性を考慮した基盤である必要があります。
      4. 高度にセキュア:
        Compact 4.0 は SHA2 アルゴリズムを使用してデータをセキュアに取扱い、高度なセキュリティを提供します。Compact 4.0 は FIPS にも対応しており、FIPS コンプライアンスが要求されるアプリケーションでも使用可能です。
    3. ADO.NET Entity Framework, API および T-SQL 記法における強化:
      Compact 4.0 は Entity Framework, API および T-SQL においても下記の強化が行われています。
      1. ADO.NET Entity Framework 4 (.NET FX 4) Code First とサーバー生成キー:
        Compact 4.0 は ADO.NET Entity Framework の
        code-first programming model 星 に対応しています。さらに、サーバーが生成するキーを持つ列(identity, rowguid など)も Compact 4.0 で ADO.NET Entity Framework 4.0 と使用する場合にサポートされます。これは .NET Framework 4 とともにリリースされた ADO.NET Entity Framework です。code-first とサーバー生成のキーを持つ列への対応は ADO.NET Entity Framework への対応を強化し、多くの開発者コミュニティからの要望にお応えしたものです。
        星日本語では
        http://blogs.msdn.com/b/daisukei/archive/2010/09/22/ado-net-entity-framework-code-first.aspx が参考になりますので参照ください。
      2. OFFSET と FETCH における T-SQL 記述:
        Compact 4.0 は OFFSET と FETCH における T-SQL 記述に対応しており、これにより、データベース ファイルに対してページング クエリーを実行可能です。
      3. API の強化:
        Compact 4.0 は二つの新しい API を追加します。一つめは System.Data.SqlServerCe.SqlCeConnection.GetSchema()  で、Compact データベース ファイルからスキーマを取得するのに使用できます。この API はまた、
        System.Data.Common.DbConnection.GetSchema に対応するためにも使用されます。 二つめは、 System.Data.SqlServerCe.SqlCeConnectionStringBuilder()  で、Compact 4.0 用の正しい接続文字列をプログラムで生成するあるいは、パースしたり、再生成することに開発者は利用できます。この API はまた、System.Data.Common.DbConnectionStringBuilder に対応するために使用されます。
    4. Visual Studio 2010 での容易なアプリケーション開発:
      Visual Studio 2010 は機能豊富なデザイナーや容易なデバッグ機能を提供し、Compact 4.0 を使用した ASP.NET Web アプリケーションの開発作業を容易にします。SQL Server Compact 4.0 を使用した開発に必要なコンポーネントについては Visual Studio 2010 SP1 Beta の
      ヘルプページ を参照ください。

    SQL Server Compact 4.0 が向かないシナリオ:

    SQL Server Compact 4.0 は ASP.NET Web アプリケーションで利用するという新しいシナリオに焦点をあてて開発されました。開発工期と開発リソースの状況により、下記のシナリオでの利用は SQL Server Compact 4.0 では想定していません。 これらのシナリオについては SQL Server Compact 3.5 SP2 が正しい選択になります。

    1. SQL Server とのデータ レプリケーション:
      Compact 4.0 は Sync Framework を利用したデータ レプリケーション、マージ レプリケーション、リモート データ アクセス(RDA)をサポートしていません。
    2. LINQ to SQL:
      Compact 4.0 では LINQ to SQL は使用できません。
      1. .NET Framework 4 とともにリリースされた ADO.NET Entity Framework  は Compact 4.0 に対応しており、Code First やサーバー生成のキーなどの新機能が追加されています。
    3. Windows Mobile, Windows Phone および Windows CE デバイス:
      Compact 4.0 の Windows Mobile, Windows Phone あるいは Windows CE デバイス用のリリースは存在しません。
    4. Visual Studio 2010 SP1 Beta の VB あるいは C# の Windows プロジェクトにおけるデザイナー :
      Windows プロジェクト中の下記のウィザードは Compact 4.0 とともには動作しません。開発者は手動で ADO.NET provider for Compact 4.0 (System.Data.SqlServerCe) へのリファレンスを追加し、Windows プロジェクトにおいても Compact 4.0 向けに開発することは可能です。
      1. データセットを構成するための データソース構成ウィザード
      2. Sync Framework を使用して SQL Server とデータやスキーマを同期するための データ構成ウィザード
      3. Compact データベースからエンティティを生成するためのエンティティ モデル ウィザード

    既知の問題:

    SQL Server Compact 4.0 Books Online および更新された Readme は Microsoft Download Center 星 から 2011年1月の第三週から入手可能になります。Books Online および Readme は SQL Server Compact 4.0 を使用して開発する際に必要な情報、より詳細な既知の問題の一覧、サポートされるプラットフォームの情報を提供します。 Microsoft WebMatrix に関する追加情報については以下のリンクを参照ください。
    星 これを翻訳している時点で英語版のみの提供です。

    星 これらの追加情報についてはこのブログおよび、以下でエバンジェリスト数人で今 日本語の準備をしています。以下を参照ください。

    WebPI の歩き方 by 武田正樹
    Days with Microsoft Web Platform
    monoe's blog


    一番情報が詳しい投稿を翻訳しておきました。他の投稿も参考になると思うので原文の方のブログもぜひ参照ください。 ウインク

  • 【MEMO】 WebMatrix の環境準備

    ということで一つ前の投稿に引き続き WebMatrix の環境準備に行ってみましょう!


    ■ WebMatrix の環境準備

    2011 年 1 月に登場した WebMatrix の利用環境を準備するための手順を整理します。

    〇サポートされている OS
    Windows 7; Windows Server 2003 Service Pack 2; Windows Server 2008 Service Pack 2; Windows Server 2008 R2; Windows Vista Service Pack 2; Windows XP Service Pack 3
    ※ここに記載のあるものよりも以前の環境で動作する可能性はありますが、サポート対象は上記となります。

    〇依存するコンポーネント
    WebMatrix は以下のコンポーネントに依存しますので環境に存在しない場合、同時にインストールすることになります。

    WebMatrix 7.09MB
    Web Platform Installer (Web PI) 92.3KB
      Web PI は以下のコンポーネントに依存します。
    - インターネット接続
    - コンピューターに対する管理者特権
    - .NET Framework 2.0(再起動)
    (Windows XP、Windows Server 2003 では追加インストール要)
    最近の PC ではメーカーツールが .NET Framework を使っていることもあり、もう入っている可能性があります。
    Microsoft .NET Framework 4 0.85MB(再起動)
    Windows イメージング コンポーネント 1.17MB  Windows Server 2003 SP2 で要求される
    Microsoft SQL Server Compact 4.0 8.04MB
    Windows インストーラー 4.5 3.17MB(再起動) XP, 2003 のみ
    Microsoft SQL Server Compact 4.0 Tools 0.79MB
    ASP.NET Web Pages 0.59MB
    ASP.NET Web Pages Language Packs 0.59MB
    SQL Server 2008 R2 管理オブジェクト 10.42MB
    SQL Server Native Client 4.49MB
    SQL Server System CLR 型 3.31MB
    Web 配置ツール 2.0 2.54MB
    .NET Framework 2.0 SP1 23.61MB(再起動)
    IIS 7.5 Express 3.29MB
    合計 Wpilauncher + 68.78MB

    Web PI は既にキャッシュにあるものはダウンロードせずにキャッシュを利用します。また、既にインストールされているものはインストールしません。

    ご覧のように、WebMatrix の既定で利用するのは Web サーバー = IIS Express 7.5、アプリケーション記法 = ASP.NET Web Pages + Razor、データベース = SQL Server Compact 4.0 になります。

    image

    PHP + MySQL の組合せで使う場合は WebMatrix のインストールが完了後、例えば WordPress をインストールする操作の中で PHP と MySQL はセットアップされます。その際も一度セットアップされている MySQL があれば以降はそれを利用することが可能になり、セットアップに要する時間はどんどん短くなっていきます。従って、WebMatrix のインストール操作ではまだ PHP や MySQL は利用できない状況になります。

    image

    〇インストール手順

    1. Microsoft /web サイト WebMatrix ページ へ行きます。
      http://www.microsoft.com/web/webmatrix
    2. [今すぐダウンロード] のボタンをクリックします。
    3. [Get the Microsoft Web Platform] のボタンをクリックします。
    4. OS によって異なるダイアログが表示されます。
      image  WM1
      Windows 7                                              Windows XP
    5. XP では Web PI が依存する .NET Framework 2.0 が無いため、ここでインストールを行います。
      WM2
      詳細は省略します。[次へ]、同意し、[インストール]、[完了]。
      Windows Server 2003 では Internet Explorer を閉じるように言われます。閉じたあとで 再試行しましょう。その代り、再起動を要求されません。
    6. WebMatrix のインストール画面が表示されます。
      7WM1WM3
      Windows 7                                            Windows XP
    7. [インストール] をクリックします。
    8. 今度は上記で説明した WebMatrix の依存コンポーネントが表示されます。
      XP に関しては Windows インストーラー4.5、.NET Framework 2.0 SP1 も適用対象になります。
      [同意する] をクリックします。
    9. .NET Framework 4 のインストールにおいて、XP では再起動を要求されます。
      WM4
      [はい]をクリックし、再起動後、再度ログオンすると、インストールが継続します。
    10. Windows インストーラー4.5 のインストールにおいて、XP では再起動を要求されます。
      WM5
      [はい]をクリックし、再起動後、再度ログオンすると、インストールが継続します。
    11. .NET Framework 2.0 SP1 のインストールにおいて、XP では再起動を要求されます。
      WM6
      [はい]をクリックし、再起動後、再度ログオンすると、インストールが継続します。
    12. インストールが完了すると、完了を知らせるダイアログが表示されます。
      7WM2WM7
      Windows 7                                            Windows XP
    13. [完了] をクリックしてダイアログを終了します。WebMatrix が起動してきます。
      7WM3WM8
    14. 背後に Web Platform Installer が起動したままになっているので [終了] をクリックして閉じましょう。

    以降は スタートメニューに Microsoft WebMatrix のグループができているので、その中から起動できるようになります。


    今回の手順説明では Windows 7 Ultimate と Windows XP Home の画面を紹介しました。
    他のサポート対象 OS でもほぼどちらかの画面遷移が参考になるはずです。Windows Server 2003 では再起動を抑制する仕組みがいくつか取り入れられているため、若干画面遷移が違うところがあります。

    より新しい Windows OS では標準で持っているコンポーネントがある、 あるいは構造の改善によって再起動が不要になっていることから XP よりも Windows 7 の方がインストール手順が簡単です。

    普通のアプリケーションのインストールに比べると、依存関係にあるコンポーネントが多いため、それなりに時間がかかります。しかし、実際には前述の表の通り、ダウンロードするコンポーネントの合計は 70MB 弱です。回線の状況でかかる時間は当然変わりますが、通信カードを使用している場合でもこのサイズであればそほど問題にならないでしょう。

    Windows XP で WebMatrix 環境を構築する場合には依存コンポーネントの更新などの関係から環境構築中は自動更新をオフにするとわかりやすくなるかもしれません。

    一つポイントがあるとすると Windows XP の場合は .NET Framework および Windows インストーラーを必要とする場合にそれなりのサイズのダウンロードが行われます。したがって、可能であれば LAN 経由でのインストールをお薦めします。あるいは、事前にこれらをダウンロードしておき、先にインストールしてしまうのも一つの手です。Web PI はインストール済みのものは依存リストから除外します。

    また、.NET Framework 2.0 に関しては個別で既に SP2 が提供を開始しているのでいずれ Web PI がインストールを行う RSS フィードが SP2 に入れ替わると考えておくといいでしょう。

    〇Web PI と ダウンロードセンター
    詳しく調査している方は実は Web PI を使わずにダウンロード センターに上がっているインストール ファイルを見つけておられるかもしれません。WebMatrix の稼働環境は前述の表にある依存関係を全部解決してインストールが必要です。したがって、Web PI でインストールすることがお奨めです。もっと自動化したいということであれば、ダウンロードセンターというよりは Web PI のキャッシュ機構をよく理解した方が便利かもしれません。

    image

    〇Web PI の作業ログとキャッシュ機能
    何が起きているのかわからない、うまく動かないとなった場合にどうするか。ここがはっきりしているかどうかがそれが信頼できる仕組みであるかの分かれ目ではないでしょうか。Web PI は正直ものすごくガラス張りな仕組みです。

    Windows にログオンしているユーザーが「WebMatrix」だった場合、下記のフォルダーに注目しましょう。

    Windows 7
    C:\Users\WebMatrix\AppData\Local\Microsoft\Web Platform Installer
    Windows XP
    C:\Documents and Settings\WebMatrix\Local Settings\Application Data\Microsoft\Web Platform Installer

    これらの配下に以下のフォルダーがあります。

    バイナリ―のキャッシュ:
    Installers フォルダーに各コンポーネント別にサブフォルダーがあり、実行したインストーラーが格納されます。

    作業ログ:
    logs フォルダー内に install フォルダーがあり、その中にインストール作業のログがあります。
    webpi フォルダーは Web PI の起動ログと考えてください。

    ===
    これらの情報を知っておくと、Web PI および WebMatrix の環境で困ることは少なくなるでしょう。そして、WebMatrix を使った開発作業に専念をしてください。


    もうちょっと書いておきましょうかね。

    ■Web PI の動作原理

    Web PI は一見普通のインストール アプリケーションに見えますが、かなり進化したアプリケーションです。というのは、Web PI の画面は基本的にマイクロソフトがホストしているサーバーから入手した RSS フィードをベースに表示しているのです。従って、RSS フィードの内容が変われば、Web PI の表示も変わるわけです。

    したがって、最新情報をこれまで「スポットライト」という表現で最初に起動したページに表示していたのですが、日本語ではよくわからないので、日本語版は「おすすめ爆笑」という表現にしてみました。

    image

    それでは RSS フィードはどこにあるんでしょうか?

    作業ログのある場所のフォルダー内に xml ファイルが数多く存在しますが、これらが RSS フィードをローカルに取り込んだものになります。その中を見れば、 Web Application Gallery からどんな情報が落ちてきているかをご自身で確認することができます。

    Web PI はこれらの XML をあるルールでまとめて、その内容を表示しているため、フィード内にもっとカテゴリーが増えれば、上のメニューも左のメニューも項目が増えていくことになります。

    それから、Web PI はマイクロソフトがホストしていないフィードを取り込むことが可能です。これをカスタムフィードと呼んでいます。[フィードの追加] ボタンでフィードを追加して様々なカスタマイズ環境構築を行うテストなども行えます。

    image

    ちょうどこの画面があるのでもう一つ追加の情報を書いておくと、IIS Express あるいは OS 付属の IIS をインストール先に選択する場合にはこのオプション画面のラジオボタンで切り替えて使うことになります。

  • 【Hyper-V】 ようやくビデオが公開された模様。よろしければご覧ください。

    私は諸事情を知っている側の人間なのであまりツッコミませんが、昨年 8月に実施された Tech・Ed  で私が話させていただいた Hyper-V の細かい Tips 21 連発ものがようやく公開と相成りました。本当にお待たせしました。

    インフラものなのですが、公開の都合上、MSDN でビデオ公開されています。

    あなたの Hyper-V 環境を最大限使い切る方法 ~ Hyper-V 設定にまつわる Tips ~ ビデオ
    http://msdn.microsoft.com/ja-jp/events/gg550837

    下記の投稿で書いたものを実際にセッションとして解説したものです。

    【Hyper-V】 もう 4 か月前、しかし結構人気なので公開するね
    http://blogs.technet.com/b/hirookun/archive/2010/12/18/3375908.aspx

    かなり好評価をセッション自体はいただいたのでお役にたつんじゃないかな。

    余談ですが、やっぱりサポートの部隊に長くいたので、こういうのが合うんですね、私。
    やらないといけないこととか、実に細かいことを話しました。

    案外 仮想環境って「あれ~?」ということが多くて、要素をチェックすると「あ~」となることが多いんです。なので、チェックシート的にこの内容を盛り込むと Hyper-V で失敗しないかもですね。(^_^)v

  • 【TFセミナー】 登壇します! 2/18 TF セミナー

    WebMatrix 中心になります。包括的にお話をしますので大体 WebMatrix の全機能を実際に動作するところでお見せできる予定です。

    私のパートは 『 HTML/CSS を一歩進めて、動的な Web サイトを作りましょう! ~ WebMatrix ショート道場 ~ 』
    https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032474981&Culture=ja-JP

    できるだけ講釈じゃなくて、デモ中心にするつもりで短い時間の中ではあるのですが、道場っぽくやってみようと思います。
    すごいシンプルなツールなのですぐにわかるとは思うんですけれど。。。

    逆にコーディングバリバリの人が来ると物足りないかもと予告しておきます。

    さらに今回はページを作るだけでなく、インターネットに公開するところもじっくり見て覚えてほしいと思いまして、
    データ・ジャパン株式会社 塚田様 にもご登壇いただくことになりました。
    WebMatrix の発行機能と現在の Windows 系のホスティングのお話をしていただく予定になっています。

    ちなみに データ・ジャパン様の ExpressWeb は何度もつぶやいていたり、ブログ書いたり、しゃべっていますが、現在 WebMatrix から Web コンテンツだけでなく、データベースも一緒に発行できる WebDeploy が可能な日本初のホスティングサービスになっています。

    ExpressWeb ~これだけ揃って月額 263 円~ 
    http://www.epw.jp/

    そして最後のパート。

    米国から ASP.NET 系の Web アプリケーションを Web PI やギャラリーにもっと増やす活動をマイクロソフト本社でしている Gavin Warrener さんが来日します。
    今回のセミナーのこのパートでは交互に日本語通訳を挿みながら世界視点で WebMatrix、ASP.NET の近況などを語ってもらう予定です。

    皆さんのコンテンツがインターネットへ、そして世界へ!

    こんなレベル感のセミナーになりました。
    私のパートはステップ バイ ステップですが、あとの2セッションはなかなか聞けない話が多いと思いますので参加可能な方はぜひお申込みいただければと思います。

    お申込みは ↓ から。

    [TF セミナー 東京] HTML/CSS を一歩進めて、動的な Web サイトを作りましょう! ~ WebMatrix 道場 ~
    https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032474981&Culture=ja-JP