PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

Asp.net MVC4, PostgreSQL और SimpleMembership

समस्या डिफ़ॉल्ट के बजाय एक खाता नियंत्रक को लागू करने में है।

ठीक। ये रहा समाधान

मुझे PostgreSQL के लिए यह सदस्यता और भूमिका प्रदाता पसंद हैंhttps://code.google.com/p/pgprovider / क्योंकि यह शुरू होने पर अपने आप सभी आवश्यक टेबल बनाता है))

इसे स्थापित करें:

इंस्टाल-पैकेज pgProvider

Web.config में जोड़ें:

  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
  </configSections>
  <connectionStrings>
    <add name="MovieDBContext" connectionString="Server=127.0.0.1;Port=5432;Database=postgres;User Id=postgres;Password=000;" providerName="Npgsql" />
    <add name="pgProvider" connectionString="Server=127.0.0.1;Port=5432;Database=postgres;User Id=postgres;Password=000;" providerName="Npgsql" />    
  </connectionStrings>

    <membership defaultProvider="pgMembershipProvider">
      <providers>
        <clear />
        <add name="pgMembershipProvider" type="pgProvider.pgMembershipProvider, pgProvider" applicationName="MvcMovie"/>
      </providers>
    </membership>
    <roleManager defaultProvider="pgRoleProvider">
      <providers>
        <clear />
        <add name="pgRoleProvider" type="pgProvider.pgRoleProvider, pgProvider" applicationName="MvcMovie"/>
      </providers>
    </roleManager>

फिर Web.config में भी जोड़ें:

  <appSettings>
    //---
    <add key="enableSimpleMembership" value="false"/>
    <add key="autoFormsAuthentication" value="false"/>    
  </appSettings>

फिर डिफ़ॉल्ट रूप से बनाए गए AccountController को हटा दें।

और अंत में AccountController जोड़ें:

public class AccountController : Controller 
{
    public ActionResult Login(string returnUrl)
    {
        ViewBag.ReturnUrl = returnUrl;        
        return View();
    }

[HttpPost]
public ActionResult Login(LoginModel model, string returnUrl)
{
    if (ModelState.IsValid)
    {
        if (Membership.ValidateUser(model.UserName, model.Password))
        {
            FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
            if (Url.IsLocalUrl(returnUrl))
            {
                return Redirect(returnUrl);
            }
            else
            {
                return RedirectToAction("Index", "Home");
            }
        }
        else
        {
            ModelState.AddModelError("", "The user name or password provided is incorrect.");
        }
    }
    return View(model);
}

public ActionResult LogOff()
{
    FormsAuthentication.SignOut();

    return RedirectToAction("Login", "Account");
}

public ActionResult Register()
{
    return View();
}

[HttpPost]
public ActionResult Register(RegisterModel model)
{           
    if (ModelState.IsValid)
    {
        MembershipCreateStatus status;

        MembershipUser membershipUser = (Membership.Provider).CreateUser(
            model.UserName, model.Password, null,null,null, true, null, out status);

        if (membershipUser != null)
        {
            FormsAuthentication.SetAuthCookie(model.UserName, false);
            return RedirectToAction("Index", "Home");
        }
        else
        {
            ModelState.AddModelError("", "Registration error");
        }
    }
    return View(model);
}

}

प्रदाता का स्रोत कोड यहां है:https:/ /code.google.com/p/pgprovider/source/browse/trunk/pgProvider/pgMembershipProvider.cs

बस इतना ही।

यह डिफ़ॉल्ट रूप से बनाए गए लॉगिन और रजिस्टर दृश्यों के साथ काम करता है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. सम्मिलित तालिका से सभी पंक्तियों के स्तंभों को एकल स्तंभ में मर्ज करें

  2. जब मैं आयात urlparse का उपयोग करता हूं तो हेरोकू लॉग कहते हैं कि 'urlparse' नामक कोई मॉड्यूल नहीं है

  3. PHP विंडोज़ पर php_pgsql.dll लोड नहीं कर रहा है

  4. बहुत धीमी सूची के साथ IN का उपयोग करते हुए SQL क्वेरी

  5. PostgreSQL और Redshift में सबस्ट्रिंग फ़ंक्शन का उपयोग कैसे करें