Casablanca: RoleProvider

Hallo,

ich habe ein Problem mit dem RoleProvider-Methodenaufruf. Das RoleProvider-Interface hat unter anderem die Methoden:

        public override string[] GetRolesForUser(string username) {}
        public override bool IsUserInRole(string username, string roleName) {}

Eigentlich sollte die IsUserInRole-Methode zuerst aufgerufen werden, die wiederum die GetRolesForUser-Methode aufruft. Bei mir wird aber die GetRolesForUser-Methode aufgerufen. Leider kann ich den Grund dafür weder finden noch das Verhalten nachvollziehen. Hat jemand hier Erfahrung damit?

Danke im Voraus.

Gruß

  1. Hallo Casablanca,

    Eigentlich sollte die IsUserInRole-Methode zuerst aufgerufen werden, die wiederum die GetRolesForUser-Methode aufruft. Bei mir wird aber die GetRolesForUser-Methode aufgerufen.

    Wenn du lediglich die Signaturen der Methoden zeigst, nicht aber die Stellen wo sie verwendet/aufgerufen werden, kann dir wohl keiner helfen, fürchte ich.

    Bis demnächst
    Matthias

    --
    Dieses Forum nutzt Markdown. Im Wiki erhalten Sie Hilfe bei der Formatierung Ihrer Beiträge.
    1. Hallo,

      vielen Dank. Eigentlich, die Leute, die damit arbeiten, wissen, wie das ganze funktioniert und man muss nicht unbedignt hier alles angeben. Die Methoden werden automatisch bei der Angabe einer Rolle in der Form von z.B.:

      [Authorize(Roles="Admin")]
      public ActionResult MyMethod()
      {
          return View();
      }
      

      aufgerufen. So weit ich aber lesen konnte, sollte, wie erwähnt, zunächst mal die Methode IsUserInRole aufgerufen werden.

      Gruß

  2. ich habe ein Problem mit dem RoleProvider-Methodenaufruf.

    Ich habe mal ein passendes Tag vergeben. Obwohl ich schon seit vielen Jahren immer wieder mal Kontakt zu ASP.NET habe, bin ich doch mit dem Rollenkonzept nie in Kontakt gekommen und kann darum auch nicht weiterhelfen. Ich würde vermuten, dass Du bei StackOverflow eher Hilfe bekommen wirst, das Thema ist hier eher fachfremd.

    Rolf