2009-06-14 20 views
5

मैं सदस्यता प्रदाता का उपयोग कर रहा हूं और जिस तरह से मैंने इसे कुछ कस्टम सुरक्षा के साथ स्थापित किया है, मुझे वर्तमान एप्लिकेशन के एप्लिकेशनआईडी (गइड) को प्राप्त करने की आवश्यकता है। सदस्यता का उपयोग कर एप्लिकेशन नाम प्राप्त करना आसान है। आवेदन नाम, लेकिन मुझे आईडी प्राप्त करने का कोई आसान तरीका नहीं मिला है।एएसपी.NET सदस्यता प्रदाता में वर्तमान एप्लिकेशन आईडी प्राप्त करें

उत्तर

6

मेरा मानना ​​है कि आपको आईडी प्राप्त करने के लिए अपना कोड (कस्टम संग्रहित प्रक्रिया की तरह) लिखना होगा। यह डेटा सदस्यता प्रदाता के कार्यान्वयन में निजी उपयोग के लिए है और प्रदाता इंटरफ़ेस का हिस्सा नहीं है (यानी यह प्रदाता के कुछ कार्यान्वयन में मौजूद नहीं हो सकता है)। उपयोगकर्ता आईडी के लिए भी चला जाता है। अच्छी खबर यह है कि डिफ़ॉल्ट कार्यान्वयन के लिए संग्रहीत प्रक्रिया लिखना काफी सीधे है।

SELECT ApplicationId FROM aspnet_Applications 
WHERE ApplicationName = 
    (System.Web.Security.Membership.Provider.ApplicationName 
     from the ASP.NET code) 

आप पर पुनर्विचार करने की है, तो आप वास्तव में इस आईडी

+0

मुझे लगता है कि आप सही हैं, सोचने के लिए ढांचे में कोई रास्ता नहीं बनाया गया है। कस्टम एसक्यूएल एकमात्र तरीका है। – Craig

0

डिफ़ॉल्ट SQLMembership स्कीमा की जरूरत है चाहते हो सकता है एक खरीद संग्रहीत किया है है कि आप कैलोरी कॉल:

तुम बस की जरूरत है। aspnet_Applications_CreateApplication, @ApplicationName (input), @ApplicationID (output) यह एक नया आईडी बनाएगा या यदि कोई मिलान मिले तो मौजूदा आईडी वापस कर देगा।

संबंधित मुद्दे