كيفية استدعاء الأسلوب عبر اياكس دون التسبب في الصفحة لتقديم ؟

StackOverflow https://stackoverflow.com/questions/67621

  •  09-06-2019
  •  | 
  •  

سؤال

أنا أعمل مع ASP.net.

أنا أحاول استدعاء الأسلوب القائم على قاعدة الطبقة للصفحة أنا باستخدام.أريد أن استدعاء هذا الأسلوب عن طريق جافا سكريبت و لا يحتاج إلى أي تقديم ليتم التعامل معها من قبل ASP.net.

ماذا سيكون أسهل طريقة لتحقيق ذلك.

لقد بحثت في PageMethods والتي لسبب ما لا تعمل و وجدت أن الكثير من الناس لديهم مشكلة معهم.

هل كانت مفيدة؟

المحلول

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

نصائح أخرى

ماذا المكتبة تستخدم لجعل اياكس المكالمات ؟ إذا كنت تستخدم مسج ثم يمكنك إنشاء أساليب ثابتة وندعو لهم على الصفحة الخاصة بك.اسمحوا لي أن أعرف إذا كنت بحاجة إلى مزيد من المساعدة!

كما Thunder3 يوحي ، فضح خدمة ويب.مرة واحدة كنت قد فعلت ذلك, يمكنك تسجيل ويب مع ScriptManager (أو ScriptManagerProxy) ، والتي سوف تسبب جافا سكريبت المجمع إلى أن تتولد.هذا المجمع يعطيك الخير واجهة الاتصال.

تمديد على نقطة أثارها @عزام, إذا كنت لا تريد أن تجعل html على الصفحة ، يمكنك تعيين نوع الإرجاع إلى شيء آخر مثل xml و لا رد.كتابة مثل علي في البرمجية أدناه.أثناء الحصول أريد أن يرسل إلى الخلف html, ولكن من خلال وظيفة أنا ارسال بعض XML عبر السلك.

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Response.Cache.SetCacheability(HttpCacheability.NoCache)
        If Request.HttpMethod = "GET" Then
            'do some work and return the rendered html
        ElseIf Request.HttpMethod = "POST" Then
            'do some work and return xml
            Response.ContentType = "text/xml"
            Response.Write("<data></data>")
            Response.End()
        Else
            Response.StatusCode = 404
            Response.End()
        End If
    End Sub
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top