ASP.NET Tutorial/Profile/ProfileCommon
Get ProfileCommon
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="GetProfile" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
User Name:<asp:TextBox ID="txtUserName" runat="server"/>
<asp:Button ID="cmdGet" runat="server" OnClick="cmdGet_Click" Text="Get Profile" /><br />
<asp:Label ID="lbl" runat="server" Text=""/>
</div>
</form>
</body>
</html>
File: Default.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class GetProfile : System.Web.UI.Page
{
protected void cmdGet_Click(object sender, EventArgs e)
{
ProfileCommon profile = Profile.GetProfile(txtUserName.Text);
if (profile.LastUpdatedDate == DateTime.MinValue)
{
lbl.Text = "No user match found.";
}
else
{
lbl.Text = "This user lives in " + profile.FirstName;
}
}
}
File: Web.config
<?xml version="1.0"?>
<configuration>
<system.web>
<profile>
<properties>
<add name="FirstName" type="String" serializeAs="Binary"/>
<add name="LastName" type="String" serializeAs="Xml"/>
<add name="DateOfBirth" type="DateTime" serializeAs="String"/>
</properties>
</profile>
</system.web>
</configuration>
Profile object retrieved from the current HttpContext object must be case to a ProfileCommon object
File: Web.Config
<configuration>
<system.web>
<profile>
<properties>
<add name="firstName" defaultValue="Steve" />
</properties>
</profile>
</system.web>
</configuration>
File: App_Code\Default.cs
using System;
using System.Web;
using System.Web.Profile;
public class Default
{
public static string GetFirstNameFromProfile()
{
ProfileCommon profile = (ProfileCommon)HttpContext.Current.Profile;
return profile.firstName;
}
}
File: Default.aspx
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load()
{
lblFirstName.Text = Default.GetFirstNameFromProfile();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Show Profile Component</title>
</head>
<body>
<form id="form1" runat="server">
<div>
First Name:
<asp:Label
id="lblFirstName"
Runat="server" />
</div>
</form>
</body>
</html>
</html>