This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

WebMethodAttribute.EnableSession الخاصية

Visual Studio 2010

الإشارة إلى ما إذا كانت الولاية جلسة عمل هو ممكنة لأسلوب الخدمة ويب ل XML.

مساحة الاسم:  System.Web.Services
التجميع:  System.Web.Services (في System.Web.Services.dll)

public bool EnableSession { get; set; }

قيمة الخاصية

النوع: System.Boolean
true إذا كانت الولاية جلسة عمل هو ممكنة لعلى أسلوب الخدمة ويب ل XML. يكون الإعداد الافتراضي هو false.

لكي تتمكن من تخزين الولاية جلسة عمل في ASP.NET HttpSessionStateالكائن، يجب أن يورث الخدمة ويب XML WebServiceو WebMethodAttributeالمطبق على أسلوب الخدمة ويب ل XML، إعداد EnableSessionخاصية إلى true. إذا كانت الولاية جلسة عمل هو ليس هناك حاجة لأسلوب الخدمة ويب ل XML، ثم dهوabling فإنه قد يؤدي إلى تحسين الأداء.

أحد عملاء الخدمة ويب ل XML هو المعرفة بشكل فريد بملف تعريف ارتباط HTTP يتم إرجاعها بواسطة الخدمة ويب XML. من أجل الخدمة ويب XML إلى الاحتفاظ بالولاية جلسة عمل لعميل، يجب أن تستمر العميل ملف تعريف ارتباط. يمكن للعملاء تلقي ملف تعريف ارتباط HTTP بإنشاء مثيل جديد من CookieContainerو تعيين الذي إلى CookieContainerخاصية فئة الوكيل قبل استدعاء أسلوب الخدمة ويب XML. إذا كنت بحاجة إلى الاحتفاظ بالولاية جلسة عمل أكثر من مثيل فئة الوكيل عند الانتقال خارج نطاق، يجب أن العميل الاحتفاظ بملف تعريف ارتباط HTTP بين الاستدعاءات الخدمة ويب XML. على سبيل المثال، يمكن أن تستمر عميل "نماذج ويب" في ملف تعريف ارتباط HTTP بواسطة الحفظ في CookieContainerفي الولاية جلسة عمل الخاصة به. لأنه ليس لكافة الخدمات الويب ل XML باستخدام الولاية جلسة عمل ولذلك العملاء غير دائماً مطلوبة لاستخدام CookieContainerخاصية لوكيل عميل، يجب تحديد الوثائق الخاصة بخدمة ويب XML ما إذا كانت الولاية جلسة عمل هو المستخدمة.

يقوم المثال التالي يستخدم الولاية جلسة العمل لتحديد عدد المرات جلسة عمل خاصة بالوصول إلى الخدمة ويب XML أسلوب SessionHitCounter.


<%@ WebService Language="C#" Class="Util" %>

 using System.Web.Services;

 public class Util: WebService {
   [ WebMethod(Description="Per session Hit Counter",EnableSession=true)]
    public int SessionHitCounter() {
       if (Session["HitCounter"] == null) {
          Session["HitCounter"] = 1;
       }
       else {
          Session["HitCounter"] = ((int) Session["HitCounter"]) + 1;
          }
       return ((int) Session["HitCounter"]);
    }   
 }



هو مثال التعليمة البرمجية التالية "نماذج ويب" عميل لإحدى خدمات XML ويب يستخدم الولاية جلسة عمل. استمرار العميل ملف تعريف ارتباط HTTP الذي يعرف جلسة عمل بشكل فريد بواسطة تخزينها في الولاية جلسة عمل الخاصة بالعميل.


<%@ Page Language="C#" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Net" %>

<html>

    <script runat="server">

        void EnterBtn_Click(Object Src, EventArgs E) 
	{
	  // Create a new instance of a proxy class for your XML Web service.
	  ServerUsage su = new ServerUsage();
          CookieContainer cookieJar;

	  // Check to see if the cookies have already been saved for this session.
	  if (Session["CookieJar"] == null) 
	    cookieJar= new CookieContainer();
          else
	   cookieJar = (CookieContainer) Session["CookieJar"];

		// Assign the CookieContainer to the proxy class.
		su.CookieContainer = cookieJar;

	  // Invoke an XML Web service method that uses session state and thus cookies.
	  int count = su.PerSessionServiceUsage();         

	  // Store the cookies received in the session state for future retrieval by this session.
	  Session["CookieJar"] = cookieJar;

          // Populate the text box with the results from the call to the XML Web service method.
          SessionCount.Text = count.ToString();  
        }

    </script>
    <body>
       <form runat=server ID="Form1">

             Click to bump up the Session Counter.
             <p>
             <asp:button text="Bump Up Counter" Onclick="EnterBtn_Click" runat=server ID="Button1" NAME="Button1"/>
             <p>
             <asp:label id="SessionCount"  runat=server/>

       </form>
    </body>
</html>


نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, الإصدار x64 من نظام التشغيل Windows XP Professional, Windows XP Starter Edition, Windows Server 2008, نظام التشغيل Windows Server 2003, نظام التشغيل Windows Server 2000 المزود بحزمة الخدمة SP4, نظام التشغيل Windows Millennium Edition, نظام التشغيل Windows 98

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0, 2.0, 1.1, 1.0

NET Framework. Client Profile

مدعوم في: 4
إظهار: