Wie speichere ich mit ASP.NET SQL Membership Provider meine eigenen Benutzerdaten?

Ich verwende den ASP.NET SQL-Mitgliedschaftsanbieter. Es gibt also eineaspnet_Users Tabelle, die Details zu jedem meiner Benutzer enthält. (Eigentlich ist dieaspnet_Membership Tabelle scheint die meisten tatsächlichen Daten zu enthalten).

Ich möchte jetzt einige benutzerspezifische Informationen in meiner Datenbank speichern, also dachte ich, ich würde einfach eine neue Tabelle mit einem erstellenUserId (GUID) -Spalte und eine FK-Beziehung zuaspnet_Users. Dann stellte ich jedoch fest, dass ich keinen einfachen Zugang zum Internet habeUserId da es nicht über die Mitgliedschafts-API verfügbar gemacht wird. (Ich weiß, ich kann darauf über die zugreifenProviderUserKey, aber es scheint, dass die API die internen abstrahiertUserID zugunsten derUserNameund ich will nicht zu weit gegen den Strich gehen).

Also dachte ich, ich sollte stattdessen ein setzenLoweredUserName Spalte in meiner Tabelle, und erstellen Sie eine FK-Beziehung zuaspnet_Users damit. Bzzzt. Nochmal falsch, denn solange es einen eindeutigen Index in gibtaspnet_Users Dasbeinhaltet dasLoweredUserNameEs umfasst auch dieApplicationId - Um meine FK-Beziehung zu erstellen, brauche ich eineApplicationId Spalte in meiner Tabelle auch.

Zuerst dachte ich: Gut, ich habe es nur mit einer einzigen Anwendung zu tun, also füge ich einfach eine solche Spalte hinzu und gebe ihr einen Standardwert. Dann wurde mir klar, dass dieApplicationId ist eine GUID, also wäre es ein Schmerz, dies zu tun. Nichthart Genau, aber bis ich meine Datenbank herausbringe, kann ich nicht vorhersagen, wie die GUID aussehen wird.

Ich habe das Gefühl, etwas zu verpassen oder Dinge falsch zu machen. Was bin ichsoll machen?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage