Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

Entries into dbo.Users, not dbo.aspnet_Users

Posted on 2012-12-23
8
1,072 Views
Last Modified: 2013-01-15
I have migrated some ASP.Net 2.0 code to ASP.Net 4.5 and am having a problem with adding users and roles. The new information is going into a table dbo.Users in the aspnetdb database rather than dbo.aspnet_Users as it used to. Why is this and how do I get it to work as before? Is there a new API I should be using?
0
Comment
Question by:steve_webber
  • 5
  • 3
8 Comments
 
LVL 19

Expert Comment

by:Manoj Patil
ID: 38717549
Just replace this,

 <membership defaultProvider="DefaultMembershipProvider">
      <providers>
        <add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
      </providers>
    </membership>

Open in new window


with this,


<membership defaultProvider="DefaultMembershipProvider">
      <providers>
        <add name="DefaultMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
      </providers>
    </membership>

Open in new window

0
 
LVL 19

Expert Comment

by:Manoj Patil
ID: 38717550
0
 

Author Comment

by:steve_webber
ID: 38717738
This did not work. I created my aspnetdb database using aspnet_regsql.exe and all of the tables within the database so created have their names prefixed with "aspnet_". The views created reference the tables with these names. However, when I try to execute

      Roles.CreateRole("Administration")
      Membership.CreateUser("admin@appforms.com", "foobar123", "admin@appforms.com")
      Roles.AddUserToRole("admin@appforms.com", "Administration")

it creates new tables which do not have "aspnet_" at the beginning of the names. It places the new role in the dbo.Roles table and can't add the user because it is looking for dbo.aspnet_Roles (via the views which still reference dbo.aspnet_Roles).
0
Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

 

Author Comment

by:steve_webber
ID: 38717741
It appears that the new user was added to the ado.aspnet_Users table, but the role was added to ado.Roles table and the error occurs trying to add the user to the role.
0
 
LVL 19

Expert Comment

by:Manoj Patil
ID: 38718047
Can you specify the error.
0
 

Author Comment

by:steve_webber
ID: 38718329
The error returned was "The user 'admin@appforms.com' was not found." I assume this is because it was looking in dbo.Users instead of dbo.aspnet_Users.
0
 

Accepted Solution

by:
steve_webber earned 0 total points
ID: 38718384
The problem was that I should not have tried to use aspnet_regsql.exe at all. This is apparently all automatic with ASP.Net 4.5. I am using the web.config that was generated by default and it works fine. I'm not sure why it was referencing the aspnet_Roles table, and I'll try to figure this out.
0
 

Author Closing Comment

by:steve_webber
ID: 38777589
I determined by myself that i was using an obsolete mechanism to create the membership database. It is created automatically, with different table names, with ASP.Net 4.5.
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
daypilot scheduler 3 35
hbo knew my windows software 4 62
Iteration Help (Asp.net VB) 5 24
why JSON Array data not binding on Model ASP.NET ? 1 11
ASP.Net to Oracle Connectivity Recently I had to develop an ASP.NET application connecting to an Oracle database.As I am doing it first time ,I had to solve several problems. This article will help to such developers  to develop an ASP.NET client…
A quick way to get a menu to work on our website, is using the Menu control and assign it to a web.sitemap using SiteMapDataSource. Example of web.sitemap file: (CODE) Sample code to add to the page menu: (CODE) Running the application, we wi…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

837 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question