Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Extending asp.net mvc 5 identity with custom tables

I have an asp.net mvc 5 application with individual user account security extended with user roles and centralized user administration (users can't create accounts, only application administrator, i.e. me, create accounts and assign roles to them).

My user class looks something like this:

public class ApplicationUser : IdentityUser
{

// User name, full name, e-mail etc....

}

and it's stored in "AspNetUsers" table provided by identity...

Now i need to expand this by adding CompanyID property to a ApplicationUser class and new table with company informations (already existing in database)...

Can someone point me where to find informations how to do this?

like image 970
onedevteam.com Avatar asked Mar 18 '14 14:03

onedevteam.com


1 Answers

You just need to add mapping to company table like this:

public class ApplicationUser : IdentityUser
{

// User name, full name, e-mail etc....
    public virtual ICollection<Company> Companies { get; set; }
}

and in company entity:

public class Company
{

    //other properties
    public virtual ApplicationUser  User { get; set; }
}

Then add new migration by Add-Migration command in your Package Manager Console. After this moment you will get migration script in your Migrations folder.

And then just call Update-Database on the same console for applying your migration to database.

like image 110
Oleksii Aza Avatar answered Oct 14 '22 17:10

Oleksii Aza