Gewusst wie: Aktivieren von Profilen in RIA Services
In diesem Thema wird erläutert, wie Profile in der WCF RIA Services-Projektmappe aktiviert werden, wenn Sie zuvor die Authentifizierung aktiviert haben. Mit Profilen können Sie Eigenschaften für einen Benutzer abrufen und speichern. Profile in RIA Services beruhen auf dem Profilframework in ASP.NET. Weitere Informationen zu ASP.NET-Profilen finden Sie unter Übersicht über ASP.NET-Profileigenschaften.
Benutzerprofileigenschaften können erst abgerufen oder gespeichert werden, nachdem der Benutzer authentifiziert wurde. Informationen zum Konfigurieren der Server- und Clientprojekte für die Authentifizierung finden Sie unter Gewusst wie: Aktivieren von Authentifizierung in RIA Services.
So konfigurieren Sie das Serverprojekt
Öffnen Sie im Serverprojekt die Datei "Web.config".
Fügen Sie im
<system.web>
-Abschnitt ein<profile>
-Element hinzu.Fügen Sie im
<profile>
-Element Profileigenschaften hinzu.Das folgende Beispiel zeigt, wie ein Profil aktiviert und eine Eigenschaft mit dem Namen
FriendlyName
definiert wird.<system.web> <authentication mode="Forms"></authentication> <profile enabled="true"> <properties> <add name="FriendlyName"/> </properties> </profile> </system.web>
Öffnen Sie die Datei, die die
User
-Klasse für den Authentifizierungsdienst enthält.Fügen Sie in der
User
-Klasse alle Profileigenschaften hinzu, die Sie der Datei "Web.config" hinzugefügt haben.Das folgende Beispiel zeigt, wie eine Eigenschaft mit dem Namen
FriendlyName
hinzugefügt wird, die der in der Datei "Web.config" hinzugefügten Eigenschaft entspricht.Public Partial Class User Inherits UserBase Private _FriendlyName As String Public Property FriendlyName() As String Get Return _FriendlyName End Get Set(ByVal value As String) _FriendlyName = value End Set End Property End Class
public partial class User : UserBase { public string FriendlyName { get; set; } }
So greifen Sie vom Clientprojekt auf Profileigenschaften zu
Öffnen Sie im Silverlight-Clientprojekt eine CodeBehind-Seite.
Legen Sie in der CodeBehind-Seite Profileigenschaften für das
User
-Objekt der aktuellen Instanz von WebContext fest, oder rufen Sie sie ab.Das folgende Beispiel zeigt, wie eine Profileigenschaft in einer CodeBehind-Datei festgelegt wird.
WebContext.Current.User.FriendlyName = "Mike"
WebContext.Current.User.FriendlyName = "Mike";
Wenn Sie das WebContext-Objekt in XAML verfügbar machen möchten, fügen Sie die aktuelle WebContext-Instanz vor dem Erstellen des visuellen Objekts im Stamm den Anwendungsressourcen im Application.Startup-Ereignis hinzu.
Das folgende Beispiel zeigt, wie die WebContext-Instanz als Anwendungsressource hinzugefügt wird.
Private Sub Application_Startup(ByVal o As Object, ByVal e As StartupEventArgs) Handles Me.Startup Me.Resources.Add("WebContext", WebContext.Current) Me.RootVisual = New MainPage() End Sub
private void Application_Startup(object sender, StartupEventArgs e) { this.Resources.Add("WebContext", WebContext.Current); this.RootVisual = new MainPage(); }
Sie können die Profileigenschaft mit deklarativer Syntax abrufen. Das folgende Beispiel zeigt, wie eine Profileigenschaft in XAML abgerufen wird.
<TextBlock Text={Binding Source={StaticResource WebContext}, Path=User.FriendlyName}"/>
Siehe auch
Aufgaben
Exemplarische Vorgehensweise: Verwenden des Authentifizierungsdiensts mit der Silverlight-Navigationsanwendung
Exemplarische Vorgehensweise: Verwenden des Authentifizierungsdiensts mit der Silverlight-Geschäftsanwendung