<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="ProfileInfo_aspx" %>
<!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 id="Head1" runat="server">
<title>Profile Information</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Panel ID="pnlNonAnonymousInfo" runat="server">
First Name: <asp:TextBox ID="firstName" Runat="server" />
Last Name: <asp:TextBox ID="lastName" Runat="server" />
Phone number: <asp:TextBox ID="phone" Runat="server" />
BirthDate <asp:TextBox ID="birthDate" Runat="server" />
</asp:Panel>
<asp:CheckBoxList ID="cblMyFlag" runat="server">
<asp:ListItem>C#</asp:ListItem>
<asp:ListItem>ASP.NET</asp:ListItem>
<asp:ListItem>.NET Apps</asp:ListItem>
<asp:ListItem>Java</asp:ListItem>
<asp:ListItem>UML</asp:ListItem>
<asp:ListItem>Object Oriented Design</asp:ListItem>
<asp:ListItem>Design Patterns</asp:ListItem>
</asp:CheckBoxList>
<asp:Button ID="save" Text="Save" Runat="server" OnClick="save_Click" />
</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 ProfileInfo_aspx : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack )
{
if (Profile.IsAnonymous == true)
{
this.pnlNonAnonymousInfo.Visible = false;
}
else
{
this.lastName.Text = Profile.lastName;
this.firstName.Text = Profile.firstName;
this.phone.Text = Profile.phoneNumber;
this.birthDate.Text = Profile.birthDate.ToShortDateString();
}
if (Profile.MyFlag != null)
{
foreach (ListItem li in this.cblMyFlag.Items)
{
foreach (string profileString in Profile.MyFlag)
{
if (li.Text == profileString)
{
li.Selected = true;
}
}
}
}
}
}
protected void save_Click(object sender, EventArgs e)
{
if (Profile.IsAnonymous == false)
{
Profile.lastName = this.lastName.Text;
Profile.firstName = this.firstName.Text;
Profile.phoneNumber = this.phone.Text;
DateTime birthDate = Convert.ToDateTime(this.birthDate.Text);
Profile.birthDate = birthDate;
}
Profile.MyFlag = new System.Collections.Specialized.StringCollection();
foreach (ListItem li in this.cblMyFlag.Items)
{
if (li.Selected)
{
Profile.MyFlag.Add(li.Value.ToString());
}
}
Response.Redirect("Welcome.aspx");
}
}
File: Web.Config
<?xml version="1.0"?>
<configuration>
<connectionStrings>
<remove name="LocalSqlServer"/>
<add name="LocalSqlServer" connectionString="data source=.\SqlExpress;Integrated Security=SSPI;Initial Catalog=aspnetdb"/>
</connectionStrings>
<system.web>
<anonymousIdentification enabled="true" />
<authentication mode="Forms"/>
<membership defaultProvider="AspNetSqlMembershipProvider"/>
<roleManager enabled="True" defaultProvider="AspNetSqlRoleProvider"/>
<compilation debug="true"/>
<profile enabled="True" defaultProvider="AspNetSqlProfileProvider">
<properties>
<add name="lastName" />
<add name="firstName" />
<add name="phoneNumber" />
<add name="birthDate" type="System.DateTime"/>
<add name="MyFlag" allowAnonymous="true"
type="System.Collections.Specialized.StringCollection" />
</properties>
</profile>
</system.web>
</configuration>
|