This documentation is archived and is not being maintained.

ProfileServiceManager Class

Configures a set of preloaded profile properties and the location of a custom implementation of the profile service.


Namespace:  System.Web.UI
Assembly:  System.Web.Extensions (in System.Web.Extensions.dll)

public class ProfileServiceManager

The ProfileServiceManager type exposes the following members.

Public methodProfileServiceManagerInitializes a new instance of the ProfileServiceManager class.

Public propertyLoadPropertiesGets or sets an array that contains the profile properties that will be made available to client script.
Public propertyPathGets or sets the path of a custom implementation of the profile Web service.

Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)

The ProfileServiceManager class corresponds to the ProfileService property that can be added to the ScriptManager or ScriptManagerProxy control.

You can use ProfileServiceManager to specify a set of profile properties that will be preloaded when the page is rendered and will be available to client script. Also, instead of using the built-in profile Web service provided by AJAX features of ASP.NET, you can use this class to provide the path of an alternative implementation of the Web service that will be used for loading or saving profile properties from script.

To use the profile service in your application, you must enable it in the configuration file. If you use the built-in profile Web service and do not have to preload properties, you do not have to explicitly declare the profile service manager on the page.

To declaratively specify a set of preloaded properties, or a custom profile Web service, include a <ProfileService> element inside the <asp:ScriptManager> element on the page, as shown in the following example.

<asp:ScriptManager ID="SM1" runat="server">
  <ProfileService LoadProperties="propertyA,propertyB" Path="MyProfileService.asmx" />

You can also programmatically configure the profile service to preload properties or to use a custom profile Web service.

The following example shows the basic class structure that must be implemented in a custom profile Web service.

<%@ WebService Language="C#" Class="MyProfileService" %>

using System.Web.Services;
using System.Collections.Generic;
using System.Web.Script.Services;

public class MyProfileService  : System.Web.Services.WebService 

    // Returns a dictionary containing a name-value
    // pair for all profile properties enabled for
    // read access found on the current users profile.
    public IDictionary<string, object> GetAllPropertiesForCurrentUser() 
        //Place code here.
        return null;

    // Given an array of one or more property names,
    // returns a dictionary containing a name-value pair
    // for each corresponding property found on the current
    // users profile that are enabled for read access.
    public IDictionary<string, object> GetPropertiesForCurrentUser(string[] properties)
        //Place code here.
        return null;

    // Given a dictionary with one or more name-value pairs,
    // sets the values onto the corresponding properties of
    // the current users profile. The method returns the count 
    // of properties that were able to be updated.
    public int SetPropertiesForCurrentUser(IDictionary<string, object> values)
        //Place code here.
        return 0;


.NET Framework

Supported in: 4, 3.5

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.