Where to place MembershipReboot in multiproject solution

269 Views Asked by At

In a previous project I used BrockAllen.MembershipReboot as my membership service provider, however, at the time there was no NugetPackage available so I copied the code and moved things around a little bit.

I had a solution that looked something like.

Solution.Common  //database connection helpers, base repos, etc
Solution.DataModels  //Contained UserAccount model  (I put all datamodels here so I would never have to worry about circular references)  All projects depended on this project.
Solution.Authentication //Services, like Add New Account were placed here
Solution.RandomServices 
Solution.WebApp //MVC Project  (Referenced Solution.Authentication)

Well, now I see that I can install MembershipReboot through NuGet. But, I'm not sure which project I should install it into.

My current project solution looks like this.

Sol.Common //Defines "BaseEntity" which UserAccountModel will need to inherit
Sol.Database  //Contains all of the EF Entities, Repositories, and Migrations
Sol.Services //References Sol.Database to connect to repositories for data acess.
Sol.WebApp  //References all of the above projects

All of the examples on the GitHub page are single project solutions. I'm not sure how or if I can use the Nuget Package to allow the UserAccountModel to inherit the BaseEntity. Ideally I'd have the IUserAccountRepository live in Sol.Database and the UserAccountServices live in Sol.Services.

0

There are 0 best solutions below