مشاركة عبر


مخطط ملف تعريف المستعرض (عنصر المستعرضات)

ملفات تعريف المستعرض يحتوي على تعريفات للمستعرضات الفردية. يستخدم ASP.NET في وقت التشغيل المعلومات في عنوان الطلب لتحديد نوع المستعرض الذي أجرى الطلب. ثم يستخدم ASP.NET ملفات المستعرض لتحديد إمكانيات المستعرض. يمكن لمحولات عنصر تحكم ASP.NET استخدام هذه المعلومات لملائمة سلوك خادم تحكم الويب ASP.NET استناداً إلى نوع الجهاز. على سبيل المثال، خادم التحكم قد يقوم بإنشاء HTML مختلف لمستعرض رسومي مثل Internet Explorer عن ما قد ينشئه لجهاز محمول.

ملاحظةملاحظة

تم تقديم ملفات تعريف المستعرض NET Framework الإصدار 2.0.تم استخدام العنصر browserCaps في إصدارات سابقة من .NET Framework في تعريف تعريفات المستعرض في ملفات التكوين.

<browsers>
    <browser id="browser name"
             parentID="parent browser name"
             refID="reference ID">
        <identification>
            <userAgent match="regular expression"
                       nonMatch="regular expression" />
            <header match="regular expression"
                    name="header name"
                    nonMatch="regular expression" />
            <capability match="regular expression"
                        name="capability name"
                        nonMatch="regular expression" />
        </identification>
        <capture>
            <userAgent match="regular expression" />
            <header match="regular expression"
                    name="header name" />
            <capability match="regular expression"
                        name="capability name" />
        </capture>
        <capabilities>
            <capability name="capability name"
                        value="capability value" />
        </capabilities>
        <controlAdapters markupTextWriterType="type name">
            <adapter adapterType="name of adapter class"
                     controlType="name of control class" />
        </controlAdapters>
        <sampleHeaders>
            <header name="header name"
                    value="header value" />
        </sampleHeaders>
    </browser>
    <gateway id="gateway ID"
             parentID="parent browser ID">
        <!-- Same child elements as for <browser>.
        <identification></identification>
        <capture></capture>
        <capabilities></capabilities>
        <controlAdapters></controlAdapters>
        <sampleHeaders></sampleHeaders>
         -->
    </gateway>
    <defaultBrowser id="Default" 
                    parentID="parent browser ID"
                    refID="reference ID" >
        <!-- Same child elements as for <browser>.
        <identification></identification>
        <capture></capture>
        <capabilities></capabilities>
        <controlAdapters></controlAdapters>
        <sampleHeaders></sampleHeaders>
         -->
    </defaultBrowser>
</browsers>

السمات والعناصر

العنصر

الوصف

adapter

يحدد التعيين بين خادم التحكم لويب ASP.NET و المحول المستخدم للتقديم في المستعرض الحالي. على سبيل المثال، التعريف التالي NokiaMobileBrowserRainbow للمستعرض موجود في الملف Nokia.browser الذي يعين أن Menu تكون عناصر خادم التحكم محولة باستخدام MenuAdapter فئة محول التحكم:

    <controlAdapters markupTextWriterType="System.Web.UI.XhtmlTextWriter" >
        <adapter
          controlType="System.Web.UI.WebControls.Menu"
          adapterType="System.Web.UI.WebControls.Adapters.MenuAdapter">
        </adapter>
    </controlAdapters>

يصف الجدول التالي السمات المطلوبة التي يحتوي عليها adapter العنصر.

السمةالوصف
adapterType سمة String مطلوبة.يعيّن اسم الفئة المستخدمة لتغيير طريقة ملائمة عنصر تحكم للمستعرض.
controlType سمة String مطلوبة.تعيّن اسم عنصر التحكم لمخطط للمحول.

adapter لا يحتوي العنصر على عناصر تابعة.

browser

يحدد تعريف مستعرض واحد.

يصف الجدول التالي السمات التي browser يمكن أن يحتويها العنصر.

ملاحظةملاحظة
لا تقم بتغيير ملفات تعريف المستعرض التي تأتي مع ASP.NET نظرًا لأن حزم الخدمة قد تقوم بتحديث تلك الملفات و الكتابة فوق التغييرات التي أجريتها.بدلا من ذلك، أنشئ ملفات مستعرض جديدة واستخدم، parentID السمة في أي تعريف مستعرض جديد لترث الإعدادات أو استخدم refID السمة لإضافة قدرات لتعريف مستعرض موجود.

تعريف المستعرض يجب أن يعرف إما refID السمة أو كلا id و parentID السمات.

السمةالوصف
id String السمة مطلوبة إذا كانتparentID السمة مستخدمة .تحديد الاسم الفريد للمستعرض الذي تم تعريفه.
parentID String السمة مطلوبة إذا كانتid السمة مستخدمة .تعيّن الاسم الفريد لتعريف اللمستعرض الأصل الذي تورث الإعداات منه.يمكن الكتابة فوق هذه الإعدادات في تعريف المستعرض الحالي.لا يلزم أن يكون في ملف تعريف المستعرض نفس تعريف المستعرض الأصل ولكن يجب أن يتم تعريفه في نفس التطبيق أو في \CONFIG\Browsers الإصدار %SystemRoot%\Microsoft.NET\Framework\ دليل المستعرض.على سبيل المثال، التعريف التالي WebTV يتم تعريف المستعرض في ملف المستعرض WebTV.browser.تعريف IE2 المستعرض الأصل يتم تعريفه في نفس الدليل في ملف IE.browser <browser id=" WebTV " parentID=" IE2 ">
refID
String لا يمكن استخدام السمة في حالid وparentID استخدام السمات.تحديد معرّف تعريف مستعرض موجود.استخدم refID السمة لإقران قدرات جديدة مع تعريف مستعرض موجود.يمكنك تكوين عدة عقد للمستعرض تشير لنفس refID.إذا كانت refID السمة محددة browser لا يمكن أن يحتوي العنصر على identification عنصر تابع. refID السمة لا تحل محل العنصر المستهدف; بدلاً من ذلك يتم تطبيق جميع إعداداته بعد تطبيق إعدادات السمات الاخرى.ترتيب تطبيق الإعدادات هو:
  • كل العقد < البوابة parentID >

  • كل العقد < البوابة refID >

  • كل العقد < المستعرض parentID >

  • كل العقد < المستعرض refID >

مثال التعريف التالي يضيف قدرات جديدة IE لتعريف المستعرض الحالي الموجود في الملف IE.browser.
<browser refID="IE">
    <capabilities>
        <capability name="UseRichTextBox" value="true" />
    </capabilities>
    <controlAdapters>
        <adapter controlType="System.Web.UI.Calendar"
adapterType="ExampleAdapters.ExampleIECalendarAdapter"
        />
    </controlAdapters>
</browser>

browser يمكن أن يحتوي العنصر على صفر أو واحد من العناصر التابعة التالية:

  • capabilities

  • capture

  • controlAdapters

  • identification

  • sampleHeaders

browsers

يمثل العنصر الجذري المطلوب لملف .مستعرض.

capabilities

تعريف قيم القدرة لتعيينها لتعريف المستعرض الحالي. للحصول على قائمة قدرات المستعرض مكتوبة بشدة راجع خصائص HttpCapabilitiesBase الفئة. تستخدم معظم هذه الخصائص حالة الأحرف camel في ملفات تعريف المستعرض. يمكنك أيضاً إضافة قيم القدرة الخاصة بك.

capabilities لا يحتوي العنصر على أي سمات.

capabilities يمكن أن يحتوي العنصر على صفر أو واحد من العناصر التابعة التالية:

  • capability

capability عنصر تابع لـ capabilities)

تعريف قيمة قدرة واحدة لتعيينها لتعريف المستعرض الحالي. على سبيل المثال، يتم تعريف الإمكانيات التالية IE لتعريف المستعرض في الملف IE.browser. يرث هذا التعريف المثال إمكانيات أخرى من Mozilla تعريف متصفح في الملف Mozilla. يتم استبدال القيم التي تحتوي على النص الموجود داخل دولار متبوعاً الأقواس ({} $) بالقيم التي تم التقاطها من التعبير المطابق في userAgent identification العنصر التابع لـ "^Mozilla[^(]*\([C|c]ompatible;\s*MSIE (?'version'(?'major'\d+)(?'minor'\.\d+)(?'letters'\w*))(?'extra'[^)]*)".

    <capabilities>
        <capability name="browser"          value="IE" />
        <capability name="extra"            value="${extra}" />
        <capability name="isColor"          value="true" />
        <capability name="letters"          value="${letters}" />
        <capability name="majorversion"     value="${major}" />
        <capability name="minorversion"     value="${minor}" />
        <capability name="screenBitDepth"   value="8" />
        <capability name="type"             value="IE${major}" />
        <capability name="version"          value="${version}" />
    </capabilities>

capability العنصر يحتوي على السمات المطلوبة التالية.

السمةالوصف
name سمة String مطلوبة.تُعيّن اسم القدرة.للحصول على قائمة قدرات المستعرض مكتوبة بشدة راجع خصائص HttpCapabilitiesBase الفئة.تستخدم معظم هذه الخصائص حالة الأحرف camel في ملفات تعريف المستعرض، على سبيل المثال، canSendMail بدلاً من CanSendMail.يمكنك أيضاً إضافة قيم القدرة الخاصة بك.
value سمة String مطلوبة.تُعيّن اسم القدرة.يتم سرد القيم الممكنة لكل من قدرات المستعرض المكتوبة بشدة في خصائص HttpCapabilitiesBase الفئة.يمكن أن يحتوي سمة القيمة على متغيرات ملتقطة داخل "$ {}"

capability لا يحتوي العنصر على عناصر تابعة.

capabilityعنصر تابع لـ identification أو capture)

تحدد أن قيمة القدرة من الفئة الأصل للمستعرض مطابقته لتعبير عادي. على سبيل المثال، التعريف التالي IE5to9 للمستعرض المضمنة في ملف IE.browser يستخدم capability عنصر لتحديد majorversion إمكانية إعداد IE التعريف الأصل يجب أن تتطابق مع التعبير العادي المشمول بغرض أن يتطابق تعريف المستعرض هذا مع مستعرض العميل. يتضمن تعريف المستعرض هذا المثال على capability عناصر تقوم بإضافة أو الكتابة فوق العناصر الموجودة في تعريف الأصل.

    <browser id="IE5to9" parentID="IE">
        <identification>
            <capability name="majorversion" match="^[5-9]" />
        </identification>
        <!-- Capability elements. -->
    </browser>

يصف الجدول التالي السمات التي capability يحتويها العنصر. إما match أو nonMatch السمة يجب أن يكون معرف ولكن ليس كلاهما.

السمةالوصف
match String سمة، لا يمكن استخدامها في نفس العنصر كماnonMatch السمة.يحدد التعبير العادي الذي يجب أن يطابق إعدادات القدرة الأصل بغرض تلبية هذا التعريف.للحصول على معلومات حول تنسق التعابير العادية, راجع تعابير عادية إطار عمل .NET.
name سمة String مطلوبة.تعيين اسم القدرة الأصل.
nonMatch String سمة، لا يمكن استخدامها في نفس العنصر كماmatch السمة.هذا العنصر غير مستخدم في capability العنصر التابع لـ capture العنصر.يحدد التعبير العادي الذي يجب أن يطابق إعدادات القدرة الأصل بغرض تلبية هذا التعريف.

capability لا يحتوي العنصر على عناصر تابعة.

capture

يعرّف المعلومات حول header ، userAgent أو capability العناصر الإضافية التي يجب استخدامها لالتقاط معلومات حول المستعرض. هذا مفيد عند محاولة الكشف عن مستعرضات جديدة لم تكن متوفرة عند إصدار .NET Framework 2.0. يمكن أن يتضمن تعريف المتصفح على التقاط تعبير عادي في matchسمة أي عنصر تعريف بغرض التقاط القيم. على سبيل المثال، العنصر المحدد التالي userAgent في ملف IE.browser يلتقط ارتفاع الشاشة بالبكسل من عنوان طلب عامل المستخدم.

    <capture>
        <userAgent match="PalmSource; Blazer 3\.0\)\s\d+;(?'screenPixelsHeight'\d+)x(?'screenPixelsWidth'\d+)$" />
    </capture>

تعريف المستعرض قد يحتاج أيضاً إلى التقاط معلومات إضافية عن طريق فحص رؤوس الطلب التي لا يتم استخدامها للتمييز فئة المستعرض. على سبيل المثال، العنصر التالي capture يلتقط عدد المفاتيح على الشاشة للهاتف خليوي OpenWave. أوامر وقوائم عرض المفاتيح على الشاشة عندما تقوم بضغط أزرار الاجهزة المطابقة SmartPhones المستندة إلى الهاتف الجوال بـWindows. 
عرض مفاتيح ناعمة القوائم والأوامر عندما تضغط أزرار الأجهزة المطابقة SmartPhones المستندة إلى الهاتف الجوال بـ Windows:

    <capture>
        <header name="HTTP_X_UP_DEVCAP_NUMSOFTKEYS" 
                match="(?'softkeys'\d+)" />
    </capture>

capture لا يحتوي العنصر على أي سمات.

capture يمكن أن يحتوي العنصر على صفر أو واحد من العناصر التابعة التالية:

  • header

  • userAgent

  • capability

controlAdapters

يعرّف محول التحكم لاستخدامه في ملائمة خادم التحكم في المستعرض.

يصف الجدول التالي السمات التي controlAdapters يحتويها العنصر.

السمةالوصف
markupTextWriterType سمة String اختيارية.يحدد نوع كاتب نص الترميز لـ.NET Framework ليتم استخدامه.النوع الافتراضي هو System.Web.UI.XhtmlTextWriter ، ولكن قيم الإمكانيات الأخرى لهذه السمة هي System.Web.UI.Html32TextWriter ، System.Web.UI.HtmlTextWriter ، System.Web.UI.ChtmlTextWriter, أو أية فئة مخصصة مشتقة من أحد هذه الفئات.

controlAdapters يمكن أن يحتوي العنصر على صفر أو واحد من العناصر التابعة التالية:

  • adapter

defaultBrowser

يعرّف قدرات المستعرض الافتراضي في ملف Default.browser. ملفات تعريف المستعرض الافتراضي لا تتطابق مع أي مستعرض فعلي معيّن ولكن يتم استخدامها بواسطة ملفات تعريف أخرى لترث إعدادات. على سبيل المثال، تعريف المستعرض التالي Default موجود في الملف Default.browser:

    <defaultBrowser id="Default">
        <capabilities>
            <capability name="ecmascriptversion"   value="0.0" />
            <capability name="javascript"          value="false" />
            <capability name="jscriptversion"      value="0.0" />
        </capabilities>
    </defaultBrowser>

تعريف المستعرض الافتراضي موروث من العديد من ملفات تعريف المستعرض. على سبيل المثال، التعريف التالي Panasonic للمستعرض موجود في الملف Panasonic.browser.

<browser id="Panasonic" parentID="Default">

يصف الجدول التالي السمات التي defaultBrowser يحتويها العنصر.

السمةالوصف
id سمة String مطلوبة.تحديد الاسم الفريد للمستعرض.

defaultBrowser يمكن أن يحتوي العنصر على نفس العنصر التابع كما browser العنصر.

gateway

يحدد تعريف بوابة مفردة. تتصل بعض المستعرضات المحمولة بخادم الويب من خلال بوابة يمكن إضافة قدرات خاصة بها. من الممكن لعدة عناصر بوابة الإشارة إلى نفس refID السمة.

gateway يمكن أن يحتوي العنصر على نفس السمات و العناصر التابعة كما browser هو العنصر. على سبيل المثال، التعريف التالي IE3AK للبوابة من الملف IE.browser.

    <gateway id="IE3AK" parentID="IE3">
        <identification>
            <capability name="extra" match="; AK;" />
        </identification>
        <capture>
        </capture>
        <capabilities>
            <capability name="ak"  value="true" />
        </capabilities>
    </gateway>
ملاحظةملاحظة
لا يمكن أن يكون لديك ملف تعريف مستعرض في التطبيق الخاص بك يحتوي على browser عنصر parentID سماته تشير إلى gateway عنصر في ملفات تعريف الافتراضية الموجودة في الدليل %SystemRoot\Microsoft.NET\Framework\versionNumber\CONFIG\Browsers.ومع ذلك، يمكنك تعيين parentID السمة للإشارة إلى ملف تعريف مستعرض مختلف في نفس المجلد App_Browsers.

headerعنصر تابع لـ identification أو capture)

يحدد التعبير الذي يجب أن طابق أو يلتقط عنوان HTTP معين في الطلب. على سبيل المثال، التعريف التالي Wml للمستعرض الموجود في الملف Default.browser يعرف المستعرض المطابق بمقارنة Accept العنوان بتعبيرين عاديين.

<identification>
    <header name="Accept" 
            match="text/vnd\.wap\.wml|text/hdml" />
    <header name="Accept" 
            nonMatch="application/xhtml\+xml; profile|application/vnd\.wap\.xhtml\+xml" />
</identification>

يصف الجدول التالي السمات التي header يحتويها العنصر. إما match أو nonMatch السمة تجب أن تكون موجودة ولكن ليس كلاهما.

السمةالوصف
match String سمة، لا يمكن استخدامها في نفس العنصر كماnonMatch السمة.يحدد التعبير العادي الذي يجب أن يتطابق مع قيمة عنوان الطلب لتلبية هذا التعريف.للحصول على معلومات حول تنسق التعابير العادية, راجع تعابير عادية إطار عمل .NET.
name سمة String مطلوبة.تعين اسم اسم العنوان.
nonMatch String سمة، لا يمكن استخدامها في نفس العنصر كماmatch السمة.هذا العنصر غير مستخدم في capability العنصر التابع لـ capture العنصر.يحدد التعبير العادي الذي يجب أن يتطابق مع قيمة عنوان الطلب لتلبية هذا التعريف.

header لا يحتوي العنصر على عناصر تابعة.

header عنصر تابع لـ sampleHeaders)

تعيين نموذج عنوان مفرد لهذا المستعرض. هذا العنصر اختياري، و لأغراض معلومات فقط. يمكن استخدام المحاكي أو أداة التصحيح الأخطاء من قبل هذه المجموعة من العناوين لمضاهاة المستعرض من أجل طلب.

يصف الجدول التالي السمات التي header يحتويها العنصر.

السمةالوصف
name سمة String اختيارية.تعين اسم اسم العنوان.
value سمة String اختيارية.تعين اسم العنوان.

header لا يحتوي العنصر على عناصر تابعة.

identification

يعرّف معلومات حول كيف يتم تعريف هذا المستعرض من الطلب الوارد.

identification لا يحتوي العنصر على أي سمات.

identification يمكن أن يحتوي العنصر على صفر أو واحد من العناصر التابعة التالية:

  • header

  • userAgent

  • capability

sampleHeaders

تحدد مجموعة من نماذج العناوين لهذا المستعرض. هذا العنصر اختياري، و لأغراض معلومات فقط. يمكن استخدام المحاكي أو أداة التصحيح الأخطاء من قبل هذه المجموعة من العناوين لمضاهاة المستعرض من أجل طلب.

sampleHeaders لا يحتوي العنصر على أي سمات.

sampleHeaders يمكن أن يحتوي العنصر على صفر أو واحد من العناصر التابعة التالية:

  • header

userAgent

يحدد التعبير الذي يجب أن يتطابق مع عنوان طلب عميل المستخدم. على سبيل المثال، التعريف التالي IE4 للمستعرض المضمن في الملف IE.browser يستخدم "MSIE 4" السلسلة لتعريف المستعرض بواسطة عنوان عامل المستخدم الذي يرسله مع الطلب.

        <identification>
            <userAgent match="MSIE 4" />
        </identification>

يصف الجدول التالي السمات التي userAgent يحتويها العنصر. إما match أو nonMatch السمة تجب أن تكون موجودة ولكن ليس كلاهما.

السمةالوصف
match String سمة، لا يمكن استخدامها في نفس العنصر كماnonMatch السمة.يحدد التعبير العادي الذي يجب أن يطابق عميل المستخدم لتلبية هذا التعريف.للحصول على معلومات حول تنسق التعابير العادية, راجع تعابير عادية إطار عمل .NET.
nonMatch String سمة، لا يمكن استخدامها في نفس العنصر كماmatch السمة.يحدد التعبير العادي الذي يجب أن يطابق عميل المستخدم لتلبية هذا التعريف.هذا العنصر غير مستخدم في capability العنصر التابع لـ capture العنصر.

userAgent لا يحتوي العنصر على عناصر تابعة.

ملاحظات

إذا وجدت أن جميع ملفات تعريف المستعرض الحالي تحقق المعايير الخاصة بك، يمكنك إنشاء ملف تعريف مستعرض جديد باستخدام التعليمات البرمجية في المثال المقطع أدناه.

ملاحظة الأمانملاحظة الأمان

لا تقم بتحميل أو تثبيت ملفات تعريف المستعرض من جهة خارجية إلا إذا كنت تثق في مصدرها.فحص أي ملف تعريف المستعرض جديد لمعرفة إذا كان هناك أي مساحات اسم غير مألوفة يتم الرجوع إليها.لمزيد من المعلومات، راجع تأمين ملفات تعريف مستعرض.

يتم تخزين ملفات تعريف المستعرض المعرفة مسبقاً في \CONFIG\Browsers الإصدار %SystemRoot%\Microsoft.NET\Framework\. يمكن وضع ملفات تعريف المستعرض من مستوى التطبيق في الدليل App_Browsers للتطبيق. في كلا الموقعين يجب أن يكون لدى ملفات تعريف مستعرض .browser ملحق اسم ملف. لا تقم بتغيير ملفات تعريف المستعرض التي تأتي مع ASP.NET نظرًا لأن حزم الخدمة قد تقوم بتحديث تلك الملفات و الكتابة فوق التغييرات التي أجريتها. بدلا من ذلك، أنشئ ملفات مستعرض جديدة واستخدم، parentID السمة في أي تعريف مستعرض جديد browser لترث الإعدادات أو استخدم refIDالسمة لإضافة قدرات لتعريف مستعرض موجود.

خلال وقت التشغيل، يتم دمج معلومات ملف تعريف المستعرض في مجموعة من برامج الاستعراض المعروفة في BrowserCapabilitiesFactory الكائن. عندما يتم إنشاء طلب ما، يقوم ASP.NET بالتعرّف على المستعرض الطالب بواسطة عنوان الطلب بالإضافة للتحويل برمجيًا HttpBrowserCapabilities للكائن الذي يتوافق مع نوع المستعرض المطلوب. يتم ذلك بواسطة الابتداء بقاموس فارغ وتطبيق الخطوات التالية المتداخلة على شجرة تعريف المستعرض:

  1. ابدأ في تعريف المستعرض الافتراضي الذي يعتبر دوما تطابق ناجح.

  2. دمج قيم القدرة المحددة في تعريف هذا المستعرض في قاموس القدرات لهذا المستعرض. تقوم القيمة المحددة في مستعرض ما بمنع القيم في الأصل.

  3. تقييم كل تعريف فرعي لتحديد مطابقة. ابدأ في الخطوة 1 مرة أخرى لكل فرع مطابق. يتم تقييم ملفات تعريف المستعرض بعد ملفات تعريف البوابة. إذا كان عميل المستخدم يتطابق مع أكثر من تعريف مستعرض أو أكثر من تعريف بوابة واحد, يتم طرح استثناء أثناء وقت التشغيل.

HttpBrowserCapabilities تم تخزين الكائن بشكل مؤقت و قد يتم استخدامه مرة أخرى لطلب مختلف من نفس نوع المستعرض.

يمكن لتطبيق ويب الوصول لمثيل الكائن الحالي HttpBrowserCapabilities باستخدام HttpRequest.Browser الخاصية. هذا الكائن للقراءة فقط ويحتوي على خصائص لكل إمكانية. بدلاً من ذلك، يمكن لمطور برامج ويب إنشاء فئة مخصصة ترث من HttpBrowserCapabilities الفئة وتخزينها مثبل في HttpRequest.Browser الخاصية.

تقوم التغييرات لملفات .browser الموجوددة في الدليل App_Browsers بإبطال ذاكرة التخزين المؤقتة، والطلب التالي يؤدي إلى إعادة ترجمة التطبيق. ومع ذلك، في حالة إجراء تغييرات على الملفات .browser في \CONFIG\Browsers الإصدار %SystemRoot%\Microsoft.NET\Framework\ يجب أن تقوم بإعادة ترجمة التطبيق يدوياً باستخدام أداة \aspnet_regbrowsers.exe %SystemRoot%\Microsoft.NET\Framework\ إصدارأو إعادة ترجمته برمجياً باستخدام BrowserCapabilitiesCodeGenerator class.

ملاحظةملاحظة

إن استخدام browserCaps العنصر في ملف Web.config لتعريف المستعرضات يعتبر مهملاً في .NET Framework 2.0 ولكنه لا يزال معتمداً.البيانات الموجودة في هذا العنصر يتم دمجها مع المعلومات من ملفات تعريف المستعرض.

عندما يقوم مستعرض بطلب للتطبيق الخاص بك يتم تخزين قدرات المستعرض في Browser الخاصية. يتم تخزين هوية المستعرض في UserAgent الخاصية. تقوم عناصر تحكم خادم الويب ASP.NET بالاستعلام عن قائمة القدرات بغرض اتخاذ قرارات حول ملائمة سلوك عناصر التحكم لمختلف المستعرضات بشكل مناسب.

الإمكانات

للحصول على قائمة قدرات المستعرض مكتوبة بشدة راجع خصائص HttpCapabilitiesBase الفئة. هذه الخصائص تستخدم حالة الأحرف camel في ملفات تعريف المستعرض. على سبيل المثال، إذا كنت تريد تحديد BackgroundSounds القدرة في ملف تعريف المستعرض الخاص بك, اكتبه كـ backgroundSounds .

يمكنك أيضاً تعريف القدرات الخاصة بك.

يمكن لتطبيق ويب استرداد قيم قدرة من HttpBrowserCapabilities الكائن باستخدام إحدى الطريقتين التاليتين:

  • عن طريق الوصول إلى قاموس إمكانيات. يمكنك استخدام هذا الأسلوب للحصول على قدرات مخصصة.

    على سبيل المثال، للحصول على قيمة قدرة ECMAScript (JavaScript) لمستعرض العميل الحالي, يمكنك استخدام التعليمات البرمجية التالية:

    String cap_javascript = Request.Browser["javascript"];
    
  • عن طريق استدعاء خاصية مكتوبة بشدة التي تقوم بلف القدرة.

    على سبيل المثال، للحصول على قيمة قدرة ECMAScript (JavaScript) لمستعرض العميل الحالي, يمكنك استخدام التعليمات البرمجية التالية:

    String cap_javascript = Request.JavaScript;
    

التكوين الافتراضي

يتم تخزين ملفات تعريف المستعرض المعرفة مسبقاً في \CONFIG\Browsers الإصدار %SystemRoot%\Microsoft.NET\Framework\. يمكنك إنشاء ملفات تعريف مستعرض بمستوى التطبيق في الدليل App_Browsers من التطبيق الخاص بك. للحصول على معلومات حول أدلة ASP.NET خاصة راجع تخطيط موقع ويب ASP.NET.

المثال على التعليمات البرمجية التالي هو ملف Generic.browser في \CONFIG\Browsers الإصدار %SystemRoot%\Microsoft.NET\Framework\.

ملاحظةملاحظة

لا تقم بتغيير ملفات تعريف المستعرض الموجودة في الدليل \CONFIG\Browsers %SystemRoot%\Microsoft.NET\\ الإصدار.يتم الاحتفاظ بهذه بواسطة برنامج .NET Framework.

<browsers>
    <browser id="GenericDownlevel" parentID="Default">
        <identification>
            <userAgent match="^Generic Downlevel$" />
        </identification>
        <capture>
        </capture>
        <capabilities>
            <capability name="cookies"
                        value="false" />
            <capability name="ecmascriptversion" 
                        value="1.0" />
            <capability name="tables"
                        value="true" />
            <capability name="type"
                       value="Downlevel" />
        </capabilities>
        <controlAdapters>
        <adapter controlType="System.Web.UI.WebControls.Menu"
                     adapterType="System.Web.UI.WebControls.Adapters.MenuAdapter" />
        </controlAdapters>
    </browser>
    <browser id="Mozilla" parentID="Default">
        <identification>
            <userAgent match="Mozilla" />
        </identification>
        <capture>
        </capture>
        <capabilities>
            <capability name="browser"
                        value="Mozilla" />
            <capability name="cookies"
                        value="false" />
            <capability name="inputType"
                        value="keyboard" />
            <capability name="isColor"
                        value="true" />
            <capability name="isMobileDevice"
                        value="false" />
            <capability name="maximumRenderedPageSize"
                        value="300000" />
            <capability name="screenBitDepth"
                        value="8" />
            <capability name="supportsBold"
                        value="true" />
            <capability name="supportsCss"
                        value="true" />
            <capability name="supportsDivNoWrap"
                        value="true" />
            <capability name="supportsFontName"
                        value="true" />
            <capability name="supportsFontSize"
                        value="true" />
            <capability name="supportsImageSubmit"
                        value="true" />
            <capability name="supportsItalic"
                        value="true" />
            <capability name="type"
                        value="Mozilla" />
        </capabilities>
    </browser>
</browsers>

مثال

المثال التالي على التعليمات برمجية هو عبارة عن ملف .browser فارغ يمكنك البناء عليه. كن حذراً تجاه إنشاء مراجع معادة في ملفات المستعرض.

<?xml version="1.0" encoding="utf-8"?>

<browsers>
    <browser id="NewBrowser" parentID="Mozilla">
        <identification>
            <userAgent match="Unique User Agent Regular Expression" />
        </identification>

        <capture>
            <userAgent match="NewBrowser (?'version'\d+\.\d+)" />
        </capture>

        <capabilities>
            <capability name="browser" value="My New Browser" />
            <capability name="version" value="${version}" />
        </capabilities>
    </browser>

    <browser refID="Mozilla">
        <capabilities>
            <capability name="xml" value="true" />
        </capabilities>
    </browser>
</browsers>

معلومات العناصر

معالج مقطع التكوين

System.Web.Configuration.HttpCapabilitiesSectionHandler

عضو التكوين

HttpRequest.Browser

HttpCapabilitiesBase.Browsers

HttpCapabilitiesBase.Capabilities

System.Web.HttpBrowserCapabilities

مواقع قابلة للتكوين

جهاز دليل مستعرضات مستوى الجذر

دليل App_Browsers المستوى التطبيق

المتطلبات

الإصدار 5.0 من خدمات معلومات الإنترنت (IIS) أو الأحدث

الإصدار .NET framework 2.0 أو إصدار أحدث

‏‫Visual Studio 2005 أو إصدار أحدث

راجع أيضًا:

المهام

كيفية: الكشف عن أنواع المستعرض في صفحات ASP.NET على ويب

المرجع

Browsers

Capabilities

HttpCapabilitiesSectionHandler

HttpBrowserCapabilities

عنصر deviceFilters (مخطط إعدادات ASP.NET)

عنصر mobileControls (مخطط إعدادات ASP.NET)

عنصر browserCaps (مخطط إعدادات ASP.NET)

المبادئ

عناصر تحكم ملقم ويب ASP.NET و قدرات المستعرض

تأمين ملفات تعريف مستعرض

وحدات سيناريو التكوين ASP.NET

نظرة عامة حول تصفية الأجهزة ASP.NET

نظرة عامة حول المعمارية التحكم في سلوك تكييفي

موارد أخرى

ASP.NET للهواتف النقالة: موقع Microsoft ASP.NET الرسمي

إعدادات التكوين العامة (ASP.NET)

إعدادات تكوين الـ ASP.NET