مشاركة عبر


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

تكوين إعدادات الولاية جلسة عمل التطبيق الحالي.

عنصر تكوين (مخطط إعدادات عام)
  النظام.ويب عنصر (مخطط إعدادات ASP.NET)
    sessionPageState عنصر (مخطط إعدادات ASP.NET)

<sessionState 
    mode="[Off|InProc|StateServer|SQLServer|Custom]"
    timeout="number of minutes"
    cookieName="session identifier cookie name"
    cookieless=
         "[true|false|AutoDetect|UseCookies|UseUri|UseDeviceProfile]"
    regenerateExpiredSessionId="[True|False]"
    sessionIDManagerType="session manager type"
    sqlConnectionString="sql connection string"
    sqlCommandTimeout="number of seconds"
    allowCustomSqlDatabase="[True|False]"
    useHostingIdentity="[True|False]"
    stateConnectionString="tcpip=server:port"
    stateNetworkTimeout="number of seconds"
    customProvider="custom provider name"
    compressionEnabled="[True|False]"
    sqlConnectionRetryInterval="number of seconds">
    <providers>...</providers>
</sessionState>

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

تصف المقاطع التالية سمات، عناصر تابعة وعناصر الأصل.

السمات

السمة

الوصف

allowCustomSqlDatabase

سمة Boolean اختيارية.

تحديد ما إذا كانت قاعدة بيانات SQL الولاية جلسة عمل يمكن أن تكون قاعدة بيانات مخصصة بدلاً من قاعدة البيانات الافتراضية لـ ASP.NET. إذا كان false ، لا يمكنك تحديد النشرة مصورة أولية أو قاعدة بيانات كقيمة للحصول sqlConnectionString صواب. قاعدة بيانات SQL حالة جلسة عمل الافتراضي هو قاعدة البيانات "ASPState". لمزيد من المعلومات، راجع أوضاع حالة جلسة العمل.

هذه السمة الجديد في ‏‫NET Framework. الإصدار 2.0.

يكون الإعداد الافتراضي هو false.

compressionEnabled

سمة Boolean اختيارية.

تحديد ما إذا كان قد تم تطبيق ضغط إلى بيانات الولاية جلسة عمل.

يكون الإعداد الافتراضي هو false.

cookieless

سمة HttpCookieMode اختيارية.

تحديد كيفية استخدام ملفات تعريف الارتباط الخاصة بتطبيق ويب.

cookieless يمكن أن تكون هذه السمة إحدى القيم الممكنة التالية. القيمة الافتراضية هي UseCookies.

ملاحظةملاحظة
عند تكوين أحد مواقع ويب ASP.NET التي تدعم AJAX استخدم القيمة الافتراضية فقط من UseCookiesللحصول cookielessالسمة.الإعدادات التي تستخدم ملفات تعريف الارتباط التي تم ترميزها في محدد موقع المعلومات (URL) غير معتمدة من قبل مكتبات النص البرمجي للكمبيوتر العميل AJAX ASP.NET.
Valueالوصف
AutoDetect تحديد ASP.NET يحدد ما إذا كان المستعرض أو جهاز الطالب يدعم ملفات تعريف الارتباط.إذا كان المستعرض أو الجهاز الطالب يدعم ملفات تعريف الارتباط، AutoDetectيتم استخدام ملفات تعريف الارتباط لاستمرار بيانات المستخدم; وإلا, يتم استخدام معرّف في سلسلة الاستعلام.إذا كان المستعرض أو جهاز يدعم ملفات تعريف الارتباط لكن ملفات تعريف الارتباط معطلة حالياً سيستمر استخدام ملفات تعريف الارتباط بواسطة الميزة الطالبة.
UseCookies ملفات تعريف الارتباط "استمرار بيانات المستخدم بغض النظر عن ما إذا كان المستعرض أو جهاز يدعم ملفات تعريف الارتباط.
UseDeviceProfile تحديد ASP.NET ما إذا كان صواب استخدام ملفات تعريف الارتباط استناداً إلى HttpBrowserCapabilities الإعداد.HttpBrowserCapabilitiesإذا كان الإعداد يشير إلى أن المستعرض أو الجهاز يدعم ملفات تعريف الارتباط, يتم استخدام ملفات تعريف الارتباط; وإلا, يتم استخدام معرّف في سلسلة الاستعلام.
UseUri تعيين استخدام ميزة الاتصال سلسلة الاستعلام لتخزين معرّف ما بغض النظر عن ما إذا كان المستعرض أو الجهاز يدعم ملفات تعريف الارتباط.

cookieName

سمة String اختيارية.

تعيين اسم ملف تعريف ارتباط بتخزين معرّف جلسة عمل.

هذه السمة الجديد في ‏‫NET Framework. الإصدار 2.0.

يكون الإعداد الافتراضي هو "ASP.NET_SessionId".

customProvider

سمة String اختيارية.

تعيّن اسم موفر الولاية جلسة عمل المخصص لاستخدامه في تخزين بيانات الولاية جلسة عمل واستردادها. يتم تحديد الموفر في العنصر الموفرين. استخدام الموفر فقط عندما جلسة العمل-صواب تعيين وضع Custom قيمة. لمزيد من المعلومات، راجع أوضاع حالة جلسة العمل.

هذه السمة الجديد في ‏‫NET Framework. الإصدار 2.0.

الافتراضي عبارة عن سلسلة فارغة.

mode

سمة SessionStateMode اختيارية.

تحديد مكان تخزين الولاية جلسة عمل القيم. لمزيد من المعلومات، راجع أوضاع حالة جلسة العمل.

mode يمكن أن تكون هذه السمة إحدى القيم الممكنة التالية. القيمة الافتراضية هي InProc.

Valueالوصف
Custom الولاية جلسة العمل يستخدم مجموعة معلومات الولاية جلسة عمل مخزن إلى مخزن بيانات مخصصة.
InProc الولاية جلسة عمل في عملية بعملية عامل ASP.NET.
Off الولاية جلسة عمل معطلة.
SQLServer الولاية جلسة عمل باستخدام قاعدة بيانات SQL الخادم مهلة عملية لتخزين معلومات الالولاية.
StateServer الولاية جلسة عمل باستخدام الخدمة الولاية إلغاء عملية ASP.NET لتخزين معلومات الالولاية.

partitionResolverType

سمة String اختيارية.

تحديد مكان تخزين الولاية جلسة عمل. إذا كان صواب المحدد في partitionResolverType سمة sqlConnectionString و stateConnectionString يتم تجاهل سمات. سلسلة الاتصال التي تم إرجاعها بواسطة PartitionResolverType صواب يُستخدم في كل طلب الاتصال موقع الملقم المناسب الباقي من الطلب. إذا لم تكن سلسلة اتصال صالحة يطرح ASP.NET ‏‏ استثناء نفس طرح عند سلسلة الاتصال المكونة إلى الخادم غير صالح. يتم استخدام هذه الخاصية لتقسيم بيانات الولاية جلسة عمل عبر عدة عقد الواجهة الخلفية في SQL أو الولاية-الخادم الوضع.

هذه السمة الجديد في ‏‫NET Framework. الإصدار 2.0.

الافتراضي عبارة عن سلسلة فارغة.

regenerateExpiredSessionId

سمة Boolean اختيارية.

تحديد ما إذا كانت جلسة العمل المعرف سوف يكون reissued جلسة منتهية الصلاحية عند المعرف تم تعيينه من قبل العميل. بشكل افتراضي، يتم reissued صواب معرفات فقط من أجل cookieless وضع عند regenerateExpiredSessionId ممكّناً. لمزيد من المعلومات، راجع IsCookieless.

هذه السمة الجديد في ‏‫NET Framework. الإصدار 2.0.

يكون الإعداد الافتراضي هو true.

sessionIDManagerType

سمة String اختيارية.

تعيّن نوع مؤهل إدارة معرّف جلسة عمل. الافتراضي القيمة عبارة عن سلسلة فارغ.

sqlCommandTimeout

سمة TimeSpan اختيارية.

يقوم بتعيين مهلة المدة بالثواني لـ SQL الأوامر التي تستخدم الوضع الولاية جلسة عمل SQL الخادم. المهلة المدة رقم ثانية أمر SQL يمكن أن يكون خاملةاً قبل أن يتم إلغاء.

هذه السمة الجديد في ‏‫NET Framework. الإصدار 2.0.

الافتراضي هو 0:00:30 (30واني).

sqlConnectionRetryInterval

سمة TimeSpan اختيارية.

تعيّن الفاصل الزمني بالثواني بين المحاولات إلى يعيّن إلى قاعدة بيانات.

الإعداد الافتراضي هو 0 ثانية.

sqlConnectionString

سمة String اختيارية.

تحدد سلسلة الاتصال على جهاز كمبيوتر يستخدم SQL الخادم. هذا صواب مطلوب عند mode صواب تعيين إلى SQLServer قيمة. لمزيد من المعلومات، راجع أوضاع حالة جلسة العمل.

يمكنك إعداد هذا إما صواب إلى مسماة sqlConnectionString من connectionStrings العقدة أو استخدام بناء الجملة التالي:

sqlConnectionString="Data Source=.\SQLServer2005;Initial Catalog=SessionState;Integrated Security=SSPI;"
ملاحظةملاحظة
لتحسين أمان التطبيق الخاص بك عند استخدام الوضع SQLServer ، فمن المستحسن أن تحمي القيمة Protected Configuration sqlConnectionString الخاصة بك بتشفير المقطع sessionStateفي ملف التكوين الخاص بك.

يكون الإعداد الافتراضي هو "data source=127.0.0.1;Integrated Security=SSPI".

stateConnectionString

سمة String اختيارية.

تعيّن اسم الخادم أو عنوان والمنفذ أين الولاية جلسة عمل يتم تخزينها عن بعد. المنفذ صواب يجب أن يكون 42424. هذه السمة مطلوبة عند mode هو StateServer صواب. تأكد من تشغيل الخدمة الولاية ASP.NET على الخادم البعيد الذي يقوم بتخزين معلومات الولاية جلسة عمل. هذه الخدمة المثبتة مع ASP.NET ثم يتم وضع افتراضي في windir%\Microsoft.NET\Framework\VersionNumber\aspnet_state.exe %. لمزيد من المعلومات، راجع أوضاع حالة جلسة العمل.

ملاحظةملاحظة
لتحسين أمان التطبيق الخاص بك عند استخدام StateServer وضع ، استخدام المحمي تكوين للمساعدة في حماية stateConnectionString القيمة بواسطة تشفير المقطع sessionState من التكوين.

يكون الإعداد الافتراضي هو "tcpip=127.0.0.1:42424".

stateNetworkTimeout

سمة TimeSpan اختيارية.

تعيّن عدد الثواني TCP/IP في شبكة الاتصال اتصال بين الويب الخادم والولاية الخادم يمكن أن يكون خاملةاً قبل إلغاء الطلب. هذا صواب مطلوب عند mode صواب تعيين إلى StateServer قيمة.

الافتراضي هو 10 ثانية.

timeout

سمة TimeSpan اختيارية.

تعيّن عدد الدقائق التي يمكن أن تكون جلسة عمل خاملة قبل أن يتم إلغاء. timeout صواب لا يمكن تعيين قيمة أكبر من دقيقة 525,600 (السنة 1) في عملية و ملقم الحالة أوضاع.

جلسة العمل timeout ينطبق الإعداد التكوين فقط ASP.NET صواب. تغيير جلسة العمل timeout لا تؤثر قيمة المهلة الزمنية لجلسة العمل لـ ASP صواب. تغيير جلسة العمل لا تؤثر قيمة المهلة الزمنية لجلسة العمل لـ ASP صواب.

القيمة الافتراضية هي 20 دقائق.

useHostingIdentity

سمة Boolean اختيارية.

تحديد ما إذا كان سيتم الرجوع إلى هوية استضافة الولاية جلسة عمل أو استخدام تمثيل العميل.

اذا true ، ASP.NET اتصال إلى مخزن session-state باستخدام أحد أوراق اعتماد العملية التالية:

  • عملية الاستضافة وهو ASPNET لـ Microsoft إنترنت Information Services (IIS) الإصدارات 5 و 5.1 أو "خدمة الشبكة" لـ ‏‫نظام التشغيل Windows الخادم 2003.

  • الانتحال التطبيق الهوية ، وهو عند استخدام التكوين التالي:

    <identity impersonate="true" userName="‎المجال/اسم المستخدمe" password="تأمين‏‎d كلمة المرور" />

في الولاية اتصال false ، ASP.NET إلى مخزن الولاية جلسة عمل باستخدام بيانات اعتماد المقترنة حالياً مع مؤشر ترابط نظام تشغيل للطلب الحالي. للحصول على تمثيل العميل ASP.NET سيتصل مخزن الولاية جلسة عمل باستخدام بيانات اعتماد الأمان التي تم التفاوض عليها مع المستعرض. إذا لم الرجوع false ، ASP.NET إلى هوية العملية أو هوية التطبيق الانتحال عند الاتصال مخزن الولاية جلسة عمل. لمزيد من المعلومات، راجع الانتحال ASP.NET.

هذه السمة الجديد في ‏‫NET Framework. الإصدار 2.0.

يكون الإعداد الافتراضي هو true.

ملاحظةملاحظة
في برنامج .NET Framework الإصدار 1.1 إذا تم تعيين السمة mode إلى SQLServer ، وكان تمثيل العميل سارية المفعول ASP.NET متصل إلى جهاز كمبيوتر يستخدم SQL الخادم باستخدام بيانات اعتماد العميل من تمثيل العميل ASP.NET.

سمات متوارثة

سمات إختيارية.

سمات توريث كل العناصر في المقطع .

العناصر التابعة

العنصر

الوصف

providers

يحتوي على مجموعة من موفر مخزن الولاية جلسة عمل المخصص.

العناصر الأصلية

العنصر

الوصف

configuration

تحديد عنصر الجذر المطلوب في كل ملف تكوين مستخدم من قبل وقت تشغيل اللغة العامة وتطبيقات .NET Framework.

system.web

تحديد العنصر الجذر لإعدادات تكوين ASP.NET في ملف تكوين واحتواء على عناصر تكون تطبيقات ويب ASP.NET وتتحكم بسلوك التطبيقات.

ملاحظات

<sessionState> العنصر يضبط إعدادات session-state للتطبيق الحالي.

عندما العميل الجديد يبدأ التفاعل مع تطبيق ويب يتم إصدار session ID وإقرانها مع الكل طلبات اللاحقة من نفس العميل أثناء session صالحة. يتم استخدام هذا المعرف إلى المحافظة على الالولاية من جانب الخادم الحالي الذي يقترن معا session العميل عبر طلبات. <sessionState> العنصر يتحكم في كيفية تطبيق ASP.NET يأسيس ويحتفظ بهذا الاقتران لكل عميل.

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

يمكن أن يتجاوز الحد الأقصى لالحجم URI عند يرسل معرّف جلسة عمل في URI. في حال كانت تركيبة بطاقة تعريف مجهول و تذكرة المصادقة المعرّفة و جلسة عمل المعرف و بيانات المستخدم أكبر من الطول الأقصى المسموح به لـ URI سيفشل الطلب مع طلب خاطئ 400 سيئة.

لاستخدام الوضع StateServer

  1. تأكد من تشغيل الخدمة الولاية ASP.NET على الخادم البعيد الذي يقوم بتخزين معلومات session-state.

    هذه الخدمة المثبتة مع ASP.NET ثم يتم وضع افتراضي في windir%\Microsoft.NET\Framework\VersionNumber\aspnet_state.exe %.

  2. في ملف Web.config للتطبيق، تعيين mode الى "StateServer" و stateConnectionString الى قيمة، مثل "tcpip=dataserver:42424".

إلى استخدام الوضع SQLServer

  1. على الكمبيوتر يستخدم SQL الخادم الذي يقوم بتخزين session state ، تشغيل InstallSqlState.sql.

    بشكل افتراضي، يتم InstallSqlState.sql windir%\Microsoft.NET\Framework\الإصدار %.

    يؤدي هذا إلى إنشاء قاعدة بيانات باسم ASPState ذات إجراءات مخزنة جديدة الجداول المسمى ASPStateTempApplications و ASPStateTempSessions في قاعدة بيانات tempdp.

  2. في ملف Web.config للتطبيق، تعيين mode الى "SQLServer" و sqlConnectionString الى قيمة، مثل "data source=localhost;Integrated Security=SSPI;".

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

    يمكنك استخدام Aspnet_regsql.exe إلى أكمل هذه الخطوات.

لمزيد من المعلومات حول الوصول إلى تعديل قيم التكوين <sessionState>راجع عنصر في تعليمات برمجية للتطبيق SessionStateSection, System.Web.SessionState.

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

The following default <sessionState> element is not explicitly configured in the Machine.config file or in the root Web.config file. ومع ذلك، هو التكوين الافنراضي التي يتم إرجاعها من قبل التطبيق.

<sessionState 
   mode="InProc" 
   stateConnectionString="tcpip=127.0.0.1:42424" 
   stateNetworkTimeout="10" 
   sqlConnectionString="data source=127.0.0.1;Integrated Security=SSPI" 
   sqlCommandTimeout="30" 
   customProvider="" 
   cookieless="UseCookies" 
   cookieName="ASP.NET_SessionId" 
   timeout="20" 
   allowCustomSqlDatabase="false" 
   regenerateExpiredSessionId="true" 
   partitionResolverType="" 
   useHostingIdentity="true">
   <providers>
      <clear />
   </providers>
</sessionState>

مثال

يوضح المثال التالي كيفية إلى تعيين إعدادات تكوين الولاية جلسة عمل.

<sessionState
   mode="SQLServer"
   cookieless="true"
   sqlConnectionString=" Integrated Security=SSPI;data source=MySqlServer;"
   sqlCommandTimeout="10" />

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

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

SessionStateSection

عضو التكوين

System.Web.SessionState

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

Machine.config

مستوى جذر ويب.config

مستوى تطبيق ويب.config

المتطلبات

Microsoft Internet Information Services (IIS) الإصدار 5.0 أو 5.1 أو 6.0.

.NET Framework، الإصدار 1.0 أو 1.1 أو 2.0

Microsoft Visual Studio 2003 أو Visual Studio 2005

راجع أيضًا:

المهام

كيفية: تكوين دلائل معينة باستخدام إعدادات الموقع

كيفية: تأمين إعدادات التكوين ASP.NET

المرجع

النظام.ويب عنصر (مخطط إعدادات ASP.NET)

عنصر الموفرين لجلسة العمل (مخطط إعدادات ASP.NET)

عنصر تكوين (مخطط إعدادات عام)

System.Configuration

System.Web.Configuration

SessionStateSection

System.Web.SessionState

المبادئ

الانتحال ASP.NET

أوضاع حالة جلسة العمل

تأمين بحالة جلسة العمل

تسلسل هرمي ملف تكوين ASP.NET و الوراثة

تأمين تكوين ASP.NET

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

موارد أخرى

استخدام معلومات حول تكوين تشفير المحمي تكوين

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

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

إدارة مواقع ويب ASP.NET

تكوين ASP.NET API