4

現在、Silverlight アプリケーションでバグを追跡しようとしています。HtmlPage.BrowserInformation クラスからブラウザー情報を取得していますが、正しくない情報を返しているようです。IE9 で実行している場合、ブラウザー情報では、バージョン 8.0 で実行されていると表示されます。HTTP レベルで何が起こっているかを確認するために Fiddler を開きました。これは、テスト サーバーへのユーザー エージェント文字列について取得したものです (テスト サーバーは、HTTP 要求に WCF を使用する独自のサーバー ソフトウェアを実行します)。

ユーザーエージェント: Mozilla/4.0 (互換性あり; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0 ; InfoPath.3; .NET4.0C; .NET4.0E)

他のサイトにアクセスしたときのユーザーエージェント文字列は次のとおりです。

ユーザーエージェント: Mozilla/5.0 (互換性あり; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)

BrowserInformation クラスがどのように機能するかはわかりません (つまり、すべての情報がユーザー エージェント文字列から取得されるのか、それとも別の場所から取得されるのか)。これに関する洞察は役に立ちます。

4

1 に答える 1

4

あなたの質問から、あなたが IE ユーザーでないことは明らかです。

問題を解決するには、これをすべてのページに追加する必要があります。

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

次のように head タグの直後に追加することが重要です。

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
于 2012-07-10T16:01:39.333 に答える