Wie werden die IdentityFactoryOptionsAppIdentityUserManager-Optionen festgelegt?

9

Wenn Sie mit Identity 2.0 gearbeitet haben, haben Sie diesen Code gesehen:

%Vor%

Ich verstehe das. In meiner Anwendung ist options.DataProtectionProvider (offensichtlich als Parameter übergeben) null. Wie und wo ist das festgelegt (oder nicht?) Jeder Ort, an dem ich gesucht habe, hat genau diesen Codeschnipsel, aber keine Erklärung für den DataProtectionProvider.

EDIT: Ich habe DataProtectionProvider im Identity-Beispielprojekt gelesen, das erklärt Was der UserTokenProvider ist, erklärt aber nicht, wie er im IdentityFactoryOptions-Objekt festgelegt ist.

    
Duston 02.10.2015, 21:17
quelle

1 Antwort

1

Es ist festgelegt, wenn der Benutzermanager erstellt wird.

Wenn Sie die Methode CreatePerOwinContext innerhalb Ihrer Klasse OWIN Startup verwenden, die eine Erweiterung in Microsoft.AspNet.Identity.Owin ist, erstellt diese Erweiterung ein neues IdentityFactoryOption -Objekt und übergibt es an das Func der Parameter von CreatePerOwinContext .

Sie können die Details von CreatePerOwinContext in sehen Quellcode hier .

%Vor%

Beachten Sie, dass Sie, wenn Sie in Ihrer App über einen eigenen DI-Mechanismus verfügen, nicht die Methode CreatePerOwinContext verwenden müssen und alle Objekte selbst erstellen müssen. Auf diese Weise brauchen Sie nicht einmal IdentityFactoryOptions . Sie können einfach IUserStore , DbContext , IDataProtectionProvider und alles, was Sie sonst noch brauchen, durch jede Art von DI, die Sie bevorzugen, injizieren.

    
Tom Pažourek 04.01.2017 18:41
quelle