2011-08-10 5 views
1

사용자 정의 "CREATEUSER"를 작동 시키려고하는데 내 web.config에 문제가 있다고 생각합니다. 도움을 주셔서 감사합니다, 나는 MEMBERSHIP 섹션을 작성했지만 내 MEMBERSHIP.CREATEUSER 명령은 데이터베이스에 로그온하지 못했습니다. 오류는 "기본 데이터베이스에 로그온 할 수 없습니다."입니다. 연결 문자열을 추가했으며 이름이 내 섹션에 있습니다. 그러나 나는 붙어있다.Asp.net 멤버쉽 공급자 사용자 CreateUser

Here is the code-behind file for creating the user: 

     protected void submit_Click(object sender, EventArgs e) 
     { 

       Membership.CreateUser(userName.Text, passwdConfirm.Text, email.Text); 

     } 

그리고 여기에 내 Web.config 파일이 있습니다.

<configuration> 

    <connectionStrings> 
     <add name="FVTCEntities" connectionString="metadata=res://*/Model.csdl|res://*/Model.ssdl|res://*/Model.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=SFP;attachdbfilename=H:\ASP.Net\FVRG\FVRG\App_Data\FVTC.mdf;integrated security=True;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" /> 
     <add name="dbMembership" connectionString="Data Source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=H:\ASP.Net\FVRG\FVRG\App_Data\ASPNETDB.MDF;User Instance=true" providerName="System.Data.SqlClient" /> 
    </connectionStrings> 
    <system.web> 
     <authorization> 
      <allow roles="ADMIN" /> 
      <allow roles="GUEST" /> 
     </authorization> 
     <roleManager enabled="true" /> 
     <authentication mode="Forms" /> 
     <compilation debug="true" targetFramework="4.0" /> 

     <membership> 

     <providers> 
      <clear/> 
      <add name="AspNetSqlMembershipProvider" 
       type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
       connectionStringName="dbMembership" 
       enablePasswordRetrieval="false" 
       enablePasswordReset="true" 
       requiresQuestionAndAnswer="false" 
       requiresUniqueEmail="true" 
       passwordFormat="Hashed" 
       maxInvalidPasswordAttempts="5" 
       minRequiredPasswordLength="7" 
       minRequiredNonalphanumericCharacters="1" 
       passwordAttemptWindow="10" 
       passwordStrengthRegularExpression="" 
       applicationName="/FVRG" /> 
     </providers> 

     </membership> 
    </system.web> 

    <appSettings> 
    <add key="DatabaseConnection" value="Data Source=.\SQLEXPRESS;AttachDbFilename=H:\ASP.Net\FVRG\FVRG\App_Data\FVTC.mdf;Integrated Security=True;User Instance=True" /> 
    </appSettings> 
</configuration> 

미리 도움을 청하십시오!

+1

연결 문자열이 올바른지 확인할 수 있습니까? 지정하는 conncectionStringName은 "dbMembership"이지만 코드에 만 포함되어 있으므로이를 볼 수 없습니다. – atbebtg

+0

전체 Web.config 파일을 삽입했습니다. – Susan

답변

1

일반적으로 데이터베이스에 액세스하는 데 계정이 사용 중이기 때문에이 오류가 발생합니다. 데이터베이스의 각 계정 설정에 기본 데이터베이스가 지정되며이 사용자의 기본 데이터베이스 설정이 존재하지 않거나 사용자가 데이터베이스에 액세스 할 수 없습니다. 이 작업은 데이터베이스 서버에서 수행해야합니다.

HTH.

+0

연결 문자열을 표시하는 전체 Web.config에 붙여 넣었습니다. SQL Server로 SQLExpress를 사용하고 있습니다. 사용자 액세스를 추가하는 방법은 무엇입니까? 서버 탐색기의 데이터베이스 목록에 DB로 표시됩니다. – Susan

+0

오, 나는 그것을 놓쳤다. 데이터베이스를 망칠 필요가 없다면 왜 오류가 발생하는지 확신 할 수 없습니다. 오류를 알았다면 읽었을 것이기 때문입니다. 어쩌면 오류는 데이터베이스가 올바르게 연결되지 않는다는 것입니다. 그것이 말하는 것은 기본 데이터베이스가 현재 SQL 데이터베이스에 로그온 한 사용자가 읽을 수없는 데이터베이스입니다 ..... 오류는 다음과 유사합니다. http://weblogs.asp.net/jeffwids/archive /2010/02/19/how-to-change-sql-server-login-default-database-through-sql-script.aspx –

+0

안녕하세요 Brian ...님께서는 2 개의 다른 SALExplress 데이터베이스에 로그인/첨부 할 수 있습니까? 같은 시간? 나는 나의 FVTC (레스토랑) 데이터베이스와 나의 ASPNETDB (멤버십 공급자) 데이터베이스를 가지고있다. 연결/연결 해제를 관리해야합니까? 내 사용자 정의 createuser 컨트롤을 사용하지 않으면 모두 작동하는 것 같습니다. – Susan

관련 문제