1

HttpBrowserCapabilitiesブラウズ=Request.Browser; 他のすべてのブラウザでIEまたはNetscapeを復活させたようです。

asp.net c#を持つ開発者PCのC:\ WINDOWS \ system32 \inetsrvbrowscap.iniファイルを更新しました。

私の要件は、サーバー側のコードでクライアントブラウザをトラップすることです。

ありがとう。

4

4 に答える 4

2

http://owenbrady.net/browsercaps/これは、web.configに追加するxmlファイルであり、browsercapabilities構造に詳細情報を提供します。これはあなたが探していることをするはずです。

編集:これはIIS7とAsp.Net3.5でのみテストしました。

于 2010-06-18T14:40:45.170 に答える
2

これは、Dot.netの1.1のバージョンです。

http://owenbrady.net/browsercaps/CodeProject.xml

ただし、web.configの適切な領域にコピーする必要があります。

于 2010-06-24T22:39:31.467 に答える
1

App_Browsersフォルダーを見てください。.browserファイルを追加して、ASP.netでのRequest.Browserオブジェクトの検出を拡張できます。

例:BlackBerryを検出するには、次のルールが必要です。たとえば、app_Browsersフォルダーにblackberry.browserを追加します。

<browsers>    
  <browser id="BlackBerry" parentID="Default">
    <identification>
      <userAgent match="BlackBerry(?'model'\d+)/(?'version'((?'major'\d+).(?'minor'\d+).(?'other'\d+)))" />
    </identification>
    <capabilities>
      <capability name="browser"     value="BlackBerry" />
      <capability name="isMobileDevice"     value="true" />
      <capability name="javascript"     value="true" />
      <capability name="ecmascriptversion"     value="1.3" />
      <capability name="version"     value="${version}" />
      <capability name="majorVersion"     value="${major}" />
      <capability name="minorVersion"     value="${minor}" />
      <capability name="supportsCss"     value="true" />
      <capability name="css1"                            value="true" />
      <capability name="css2"                                    value="true" />
      <capability name="frames"     value="false" />
      <capability name="cookies"     value="true" />
      <capability name="mobileDeviceManufacturer"   value="RIM" />
      <capability name="isColor"                         value="true" />
      <capability name="supportsBold"                    value="true" />
      <capability name="supportsFontName"                value="true" />
      <capability name="supportsImageSubmit"             value="true" />
      <capability name="supportsItalic"                  value="true" />
      <capability name="preferredImageMime"              value="image/jpeg" />
    </capabilities>
  </browser>
</browsers>

今、あなたは永遠にあなた自身を追加し続けることができます、しかし彼らのファイルに何千ものデバイスを持っているマイクロソフトからのプロジェクトがありました:MDBF、しかし彼らは最近このプロジェクトをシャットダウンしました(しかし最後のバージョンはまだアクセス可能です)。したがって、代替案は51degrees.codeplex.comを含めることです。MDBF ほど簡単ではありませんが、仕事を終わらせる必要があります。

于 2010-11-19T08:46:06.290 に答える
1

.Net 3.5を使用して、web.configのbrowsercapsセクションで動作するHttpBrowserCapabilitiesをコメントアウトしました。これが私が持っているもので、同じマシン上のIE 8、Firefox、Chrome、Safariで検証されています。

        System.Web.HttpBrowserCapabilities browser = Request.Browser;

        BrowserNm.Text = browser.Browser;
        BrowserVer.Text = browser.Version;
        Platform.Text = browser.Platform;

ブラウザ検出の要件は似ていますが、browsercapsはまったく使用しません。browsercapsを使用する場合は、正規表現を記述してブラウザーを識別することもできます。これは、私が嫌いだった最初のオプションでした。

私がまだ調査している3つのプロパティは、IsMobileDevice、MobileDeviceManufacturer、およびMobileDeviceModelです。私がそれらの仕事を知っているなら、私は金色です。

于 2011-09-15T18:04:48.410 に答える