2011-12-11 7 views
1

誰もがasp.netのモバイルデバイスからの要求を識別する方法を知っていますか?私はこのコードを使用していますが、ミニオペラエミュレータを使用してモバイルかデスクトップアプリケーションかどうかを確認しています。ASP.NET C#でモバイルデバイスから送信されたhttp要求を識別する方法は?

HttpRequest httpRequest = HttpContext.Current.Request; 

if ((httpRequest.Browser.IsMobileDevice)) 
{ 
    string path = httpRequest.Url.PathAndQuery; 
    bool isOnMobilePage = path.StartsWith("/Mobile/", StringComparison.OrdinalIgnoreCase); 

    if (!isOnMobilePage) 
    { 
     string redirectTo = "~/Mobile/"; 
     HttpContext.Current.Response.Redirect(redirectTo); 
    } 
} 

私はVisual Studioを使用しており、モバイルSDKは組み込まれていません。

おかげ

答えて

2
+0

ありがとうございました。あなたの提案はうまくいきます............もう一度お礼ありがとうございます –

+0

他の開発者も便利であるようにマークしてください。 – Nitesh

0

ASP.NETの使用に、サーバー上の事前定義された* .browserファイルを見ていました。それは常に最新のものではないので、良いアプローチではありません。あなたはparse the UserAgentと情報を得ることができます。

0

.NET APIを使用してWURFL resource databaseを使用してください。これは、あなたに非常に広範なモバイル機能のリストを提供します。最新のデバイスで常に維持されているオープンソースコミュニティプロジェクトです。

51度は過去に使用していたAPIです。ブラウザオブジェクトは、モデル、メイク、OSなどのさまざまなモバイル固有の属性で拡張され、モバイルデバイスの場合は重要です。さらに、WURFLコミュニティは、独自のWURFL .Net APIを提供しています。このSO questionは比較と対照をしています。

私たちのテストでは、興味深いタブレットデバイスがモバイルデバイスとして登場しなかったので、これらのデバイスを分類する際に重要なことを意識する必要があります。あなたがちょうど小さな画面の解像度に懸念しているなら、これで十分です。しかし、あなたのサイトが移植可能なデバイスをターゲットにすることに興味がある場合は、追加するロジックを含める必要があります。つまり、モデルを検証してからmakeを実行する必要があります。

関連する問題