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

  1. Öffnen Sie im Serverprojekt die Datei "Web.config".

  2. Fügen Sie im <system.web>-Abschnitt ein <profile>-Element hinzu.

  3. 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>
    
  4. Öffnen Sie die Datei, die die User-Klasse für den Authentifizierungsdienst enthält.

  5. 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

  1. Öffnen Sie im Silverlight-Clientprojekt eine CodeBehind-Seite.

  2. 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";
    
  3. 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