2009-11-03 7 views
5

私はデスクトップブラウザとモバイルブラウザの両方でフォーマットできるようにするため、ASP.Net MVCアプリケーションを開発しています。どちらのフォーマットも同じコントローラとアクションを使用しますが、異なるビューが必要です。フォーマットデスクトップとモバイルブラウザのASP.Net MVCアプリケーション

これを行うにはどうすればよいですか?アクションでブラウザの検出を行い、適切なビューを呼び出すのですか?ビューはブラウザで検出してそれに応じてレンダリングしますか? return View();の間に何かがあり、ビューを実際に処理してオーバーライドすることができますか?

おかげ

+0

:[モバイルWebアプリケーションツールキット](http://code.msdn.microsoft.com/WebAppToolkitMobile)。 WURFLの使用を忘れないでください。 – fravelgue

+0

モバイルウェブアプリツールキットのように見えます。私はMDBFについて知っていて、既にそれを使用しようと計画していました。リンクありがとう! – Matthew

答えて

0

私は、コントローラ内のブラウザを検出し、適切なビューを返します。私はビューエンジンをオーバーライドすることができますが、それは本当に極端な過労のように思えます。

+0

それは私が考えていたものですが、すべてのアクションメソッドを終了するのが正しいとは感じません。 ブラウザ==モバイルの場合 戻るビュー( "モバイル"); else 戻るビュー( "デスクトップ"); – Matthew

1

返されたモデルの周りに適切なビュー/マスターページを埋め込むカスタム属性を使用します。私たちはAjaxificationのためにこの戦術を大きく使いますが、コンセプトをモバイルに拡張するのは難しいはずはありません。

+0

興味深い。詳細を教えていただけますか?属性はどこに行きますか?属性を使用して、どのビューを使用するかを決定するにはどうすればよいですか?カスタムビューエンジンをお持ちですか? – Matthew

関連する問題