私は最近これについて考えていますが、既存または新規のMVC2Webサイト/アプリのモバイルバージョンを作成するための本当にすてきで整頓された方法を知りません。
最も簡単な方法は、モバイルが検出されたかどうかに応じて異なるスタイルシートを使用することだと思いますが、どこにでも大量のインライン画像がある場合やその他の理由で、ビューコンテンツも変更する必要がある場合があります。
これに対する良いアプローチは何ですか?MVC2でかなり簡単にテーマを設定する方法はありますか?
私は最近これについて考えていますが、既存または新規のMVC2Webサイト/アプリのモバイルバージョンを作成するための本当にすてきで整頓された方法を知りません。
最も簡単な方法は、モバイルが検出されたかどうかに応じて異なるスタイルシートを使用することだと思いますが、どこにでも大量のインライン画像がある場合やその他の理由で、ビューコンテンツも変更する必要がある場合があります。
これに対する良いアプローチは何ですか?MVC2でかなり簡単にテーマを設定する方法はありますか?
NerdDrinnerのソースコードを確認してください。彼らは、基本WebFormViewEngineクラスから継承するMobileCapableWebFormViewEngineクラスを実装しました。MobileCapableWebFormViewEngineは、HTTPContextを使用して、クライアントでレンダリングするビューを決定します。ソースコードを見ると、これはより理にかなっています
MVC はサーバー側のテクノロジにすぎません。「サーバー側のテクノロジに関係なく、モバイル Web サイトを作成するためのベスト プラクティスは何か」を自問する必要があります。
私の意見では、整形式でセマンティックな (x)html を作成することが最初のステップです。あなたが言うように、最も論理的なことは、さまざまなメディア タイプに対してさまざまなスタイル シートを作成することです。その通りです。
インライン画像など、あなたが言及した問題については、これを考慮してください。それらの画像はコンテンツですか、それともプレゼンテーションですか?
最初のケースでは、モバイル版にも存在するはずです。後者では、スタイル シートで定義されているため、モバイル CSS で単純に回避できます。
私が考えられる唯一の例外は、モバイルで異なる機能を提供したい場合、または強制された場合です。つまり、JS に大きく依存し、それらのスクリプトがモバイル ブラウザーで実行されないページなどです。この場合、これらのページの異なるバージョンを作成し、ユーザー エージェントに基づいて適切なバージョンを提供することができます。