मेरे पास एक asp.net एप्लिकेशन और webservices (asmx) है जो एक ही अनुप्रयोग में रहता है लेकिन एएसपीएक्स फ़ाइलों के उसी फ़ोल्डर में नहीं है। मेरे पास एक Winform एप्लिकेशन है जो webservices का उपयोग करता है। मैंने webservice विधियों को [WebMethod (EnableSession = true)] के साथ चिह्नित किया है, लेकिन मैं webservices में एप्लिकेशन पर समान सत्र मान साझा करने में सक्षम नहीं हूं। WinForm आवेदन आवेदन से sessionID की पहुंच है और मैं निम्नलिखित कोडwebservice और asp.net अनुप्रयोग के बीच सत्र साझा करना
Uri uri = new Uri(ServerServiceUrl);
_cookieContainer = new CookieContainer();
_cookieContainer.Add(new Cookie("ASP.NET_SessionId", SessionID, "/", uri.Host));
मेरा प्रश्न है उपयोग कर रहा हूँ: वहाँ कुछ है कि मुझे याद आ रही है या गलत कर कि मैं webservices से आवेदन sessioin तक नहीं पहुँच सकता है?
आपको webservice में सत्रों की आवश्यकता क्यों है? क्या आप कोई अस्थायी स्थिति संग्रहित कर रहे हैं? इस मामले में, आईएमओ सेवाओं को स्टेटलेस होना चाहिए और इसके द्वारा, आपकी समस्या मौजूद नहीं होगी ... – Sunny
सहमत हैं, आपको स्थैतिक कक्षाओं जैसे वेबसाइसेस के बारे में सोचना होगा – Pierreten
मेरी एएसपीएक्स सेवाएं, एप्लिकेशन की तरह, जावा वेबसाइसेस से बात करें और जब एप्लिकेशन सेवाओं को कॉल करता है तो यह समय के लिए मूल्यों को कैश करता है। जावा सेवाओं को बार-बार कॉल करने के बजाय मैं उस डेटा का उपयोग करना चाहता हूं जिसे एप्लिकेशन द्वारा कैश किया गया है। इसलिए मैं सत्र क्यों साझा करना चाहता हूं। –