SQL Server에 대한 연결을 설정하는 동안 네트워크 관련 또는 인스턴스 관련 오류가 발생했습니다 (Asp.net Mvc 응용 프로그램에서).

user123

여기에서 validateUSer를 확인하기 위해 로그인 페이지를 생성하고 있지만 예외가 발생했습니다. 여기에 전체 코드를 게시했습니다. 한 번 확인하십시오. 여기에 이미지 설명 입력

enter code here

namespace Loginusingmvc.Controllers
 {
   public class LoginController : Controller
{
    //
    // GET: /Login/

    public ActionResult Index()
    {
        return View();
    }
    [HttpGet]
    public ActionResult LogIn(string returnUrl = "")
    {
        if (User.Identity.IsAuthenticated)
        {
            return LogOut();
        }

        ViewBag.ReturnUrl = returnUrl;
        return View();
    }
   // [HttpPost]
    public  bool ValidateUser(string UserID, string Password)
    {
        if (string.IsNullOrEmpty(UserID) || string.IsNullOrEmpty(Password))
            return false;

        using (ntc_salesEntities context = new ntc_salesEntities())
        {
            var user = (from u in context.user_master
                        where String.Compare(u.UserID, UserID, StringComparison.OrdinalIgnoreCase) == 0
                              && String.Compare(u.Password, Password, StringComparison.OrdinalIgnoreCase) == 0
                         select u).FirstOrDefault();

            return user != null;
        }
    }

    [HttpPost]
    public ActionResult Login(user_master model, string returnUrl = "")
    {
        if (ModelState.IsValid)
        {
            if (Membership.ValidateUser(model.UserID,model.Password))
            {
                FormsAuthentication.RedirectFromLoginPage(model.UserID,false);
                return RedirectToAction("Index", "Login");
            }
            else
            {
                ModelState.AddModelError("", "Login details are wrong.");
            }

        }
        return View(model);

    }


    public ActionResult LogOut()
    {
        FormsAuthentication.SignOut();
        return RedirectToAction("Index", "Login");
    }




}

}

노선:

   routes.MapRoute(
            name: "Default1",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Login", action = "Login", id = 
              UrlParameter.Optional }
        );

HTML

    @model Loginusingmvc.Models.user_master

@{
   ViewBag.Title = "LogIn";
   Layout = "~/Views/Shared/_Layout.cshtml";
}

<h2>LogIn</h2>


    @Html.ValidationSummary(true, "Login Failed, check details")

<div>
       @using (Html.BeginForm("Login", "Login", new { returnUrl = Request.QueryString["returnUrl"] }, FormMethod.Post))
        {

    <fieldset>
        <legend>Login Form</legend>
        <div class="editor-label">@Html.LabelFor(u=> u.UserID)</div>
        <div class="editor-field">@Html.TextBoxFor(u=> u.UserID)
            @Html.ValidationMessageFor(u=> u.UserID)
        </div>
        <div class="editor-label">@Html.LabelFor(u=> u.Password)</div>
        <div  class="editor-field">@Html.PasswordFor(u=> u.Password)
            @Html.ValidationMessageFor(u=> u.Password)
        </div>

        <input type="submit" value="Log In" name="Login" />

    </fieldset>
    }
</div>

web.config

    <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-Loginusingmvc-20140516104010;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-Loginusingmvc-20140516104010.mdf" providerName="System.Data.SqlClient" />
<add name="LoginEntities" connectionString="metadata=res://*/Models.Login.csdl|res://*/Models.Login.ssdl|res://*/Models.Login.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=206.225.85.212;user id=ntc;password=NTC@123;database=ntc_sales&quot;" providerName="System.Data.EntityClient" />
<add name="ntc_salesEntities" connectionString="metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://*/Models.Model1.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=;user id=ntc;password=NTC@123;database=ntc_sales&quot;" providerName="System.Data.EntityClient" />
<add name="DAConnection" connectionString="Data Source=206.225.85.212;user id=;database=" providerName="MySql.Data.MySQLClient" />

<membership defaultProvider="mysqlprovider">
  <providers>
    <clear/>
    <add name="mysqlprovider" 
         type="System.Web.Security.SqlMembershipProvider" connectionStringName="DAConnection"
         enablePasswordRetrieval="false"
         enablePasswordReset="true" 
         requiresQuestionAndAnswer="true" 
         requiresUniqueEmail="false"
         maxInvalidPasswordAttempts="5" 
         minRequiredPasswordLength="6" 
         minRequiredNonalphanumericCharacters="0" 
         passwordAttemptWindow="10"
         applicationName="/" />
  </providers>
</membership>
안드레이

당신을 확인하십시오 ConnectionString. 앱이 databse와의 연결을 설정할 수 없기 때문에 분명히이 오류가 발생했습니다.

MySql을 사용하는 한 인증의 모든 측면을 제어하고 코드를 디버깅 할 수 있도록 사용자 지정 멤버 자격 공급자를 구현하는 것이 좋습니다. 진행 방법은 다음과 같습니다. http://msdn.microsoft.com/en-us/library/ms366730%28v=VS.85%29.aspx

여전히 SqlMembershipProvider를 사용하고 싶다면 이것을 시도하십시오.

<membership defaultProvider="MySqlMembershipProvider">
  <providers>
    <clear/>
    <add name="MySqlMembershipProvider"
          type="MySql.Web.Security.MySQLMembershipProvider, mysql.web"
            connectionStringName="DAConnection"
            enablePasswordRetrieval="false"
            enablePasswordReset="true"
            requiresQuestionAndAnswer="false"
            requiresUniqueEmail="true"
            passwordFormat="Hashed"
            maxInvalidPasswordAttempts="5"
            minRequiredPasswordLength="6"
            minRequiredNonalphanumericCharacters="0"
            passwordAttemptWindow="10"                            
            applicationName="/"
            autogenerateschema="true"/>
  </providers>
</membership>

위치 : http://www.integratedwebsystems.com/2010/02/how-to-setup-and-configure-mysql-membership-provider-6-2-2-porting-to-mono-part-2-of -삼/

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관