Custom MembershipProvider: Dla tego obiektu nie zdefiniowano żadnego konstruktora bez parametrów

Mam niestandardową klasę MembershipProvider, która dziedziczy z MembershipProvider, która ma dwa parametry:

public class CustomMembershipProvider : MembershipProvider
{
    private readonly ISecurityRepository _securityRepository;
    private readonly IUserRepository _userRepository;

    public CustomMembershipProvider(ISecurityRepository securityRepository, IUserRepository userRepository)
    {
        ...
    }

    public override MembershipUser GetUser(string username, bool userIsOnline)
    {
        ...
    }

    ... etc
}

Plik konfiguracyjny tego wygląda podobnie:

<membership defaultProvider="CustomMembershipProvider">
  <providers>
    <clear />
    <add name="CustomMembershipProvider" type="Library.Membership.CustomMembershipProvider" />
  </providers>
</membership>

Działa to dobrze głównie w mojej aplikacji internetowej do logowania i wylogowywania się. Używam Unity dla DI i mam niezbędne ustawienia klas w mojej klasie Boostrapper.cs.

Ostatnio jednak wystąpił problem, gdy chciałem utworzyć niestandardową klasę użytkownika i nazwał jąCzłonkostwo.GetUser metoda. Otrzymuję następujący wyjątek, gdy robię:

{"No parameterless constructor defined for this object. (C:\\*app path*\\web.config line 43)"}

Linia 43 w moim pliku konfiguracyjnym wskazuje na niestandardowego dostawcę członkostwa, który opublikowałem powyżej. Myślę, że gdzie indziej aplikacja używa Unity do rozwiązywania tych parametrów, ale gdy korzysta z klasy członkostwa, nie działa.

Czy jest jakiś sposób, w jaki mogę powiedzieć aplikacji, jak rozwiązać te zależności lub czy nie istnieje sposób na dodanie tych zależności do mojego dostawcy członkostwa bez użycia konkretnej implementacji?

EDYTUJ 1:

Oto niestandardowa klasa użytkownika:

public class User : MembershipUser
{
    public int UserId { get; set; }
    public string Username { get; set; }
    public string Email { get; set; }
    public DateTime LastLoggedOnDate { get; set; }
    ...         
}

EDYCJA 2:

W mojej niestandardowej klasie dostawcy członkostwa wygląda to tak, jak wygląda metoda GetUser:

public override MembershipUser GetUser(string username, bool userIsOnline)
{
    return _userRepository.GetUser(username);
}

questionAnswers(3)

yourAnswerToTheQuestion