जब मैं "हटाएं" लिंकबटन पर क्लिक करता हूं, तो यह मेरे "JobPost.mdf" में मेरी "UserDetail" तालिका से सभी उपयोगकर्ता जानकारी को हटा सकता है, यह भी हटा देता है संबंधित "aspnet_Users" & "aspnet_Membership", लेकिन "UserInRole" में अभी भी उपयोगकर्ता नाम शामिल है। भले ही मैंने कोड निर्दिष्ट किया: सदस्यता। डेलेट यूज़र (उपयोगकर्ता नाम, सत्य);सदस्यता। DeleteUser (UserName, true) उपयोगकर्ता को भूमिका से हटा नहीं रहा
मुझे लगता है कि बूल डिलीटलरेटेड डेटा के लिए सच है, लेकिन यह वास्तव में userInRole को हटा नहीं देता है। तो अगली बार जब उपयोगकर्ता एक ही नाम से पंजीकृत होता है, तो यह स्वचालित रूप से "व्यवस्थापक" भूमिका प्राप्त करता है।
यह "deleteUser" पृष्ठ मैं इसे संरक्षित "व्यवस्थापक" फ़ोल्डर में रखता हूं।
इसे कैसे हल करें? क्यों सदस्यता। DeleteUser (UserName, true) UserInRole को हटा नहीं देता है?
protected void GridView2_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Delete")
{
string UserName = e.CommandArgument.ToString();
Membership.DeleteUser(UserName, true);
JobPostDataContext db = new JobPostDataContext();
var query = from u in db.UserDetails
where u.UserName == UserName
select u;
foreach (var item in query)
{
db.UserDetails.DeleteOnSubmit(item);
}
db.SubmitChanges();
FormsAuthentication.SignOut();
}
}
संरक्षित व्यवस्थापक फ़ोल्डर के अंदर मेरे web.config:
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<system.web>
<authorization>
<allow roles="Administrators" />
<deny users="*" />
</authorization>
</system.web>
</configuration>
यह कस्टम टेबल और 'SqlMembershipProvider' टेबल का मिश्रण जैसा दिखता है। वास्तव में 'UserInRole' क्या है जिसका आप उल्लेख कर रहे हैं? (इसमें अभी भी 'उपयोगकर्ता नाम' है।) –