웹사이트는 사용자의 반복 방문을 위해 설계되었습니다. 개인화를 통해 웹사이트는 사용자 식별 및 기타 세부 정보를 기억할 수 있으며 각 사용자에게 개인적인 컨텍스트를 제공합니다.
ASP.NET은 특정 고객의 취향과 선호도에 맞게 웹 사이트를 개인화하는 서비스를 제공합니다.
ASP.NET 개인화 서비스는 사용자 프로필을 기반으로 합니다. 사용자 프로필은 웹사이트가 사용자에게 요구하는 정보를 정의합니다. 예를 들어 이름, 나이, 주소, 생년월일, 휴대폰 번호 등이 있습니다.
이 정보는 응용 프로그램의 web.config 파일에 정의되어 있으며 ASP.NET 런타임은 이를 읽고 사용합니다. 이 작업은 개인화 제공업체가 수행합니다.
사용자 데이터에 포함된 사용자 프로필은 ASP.NET에서 생성된 기본 데이터베이스에 저장됩니다. 서명 파일을 저장하기 위해 자신만의 데이터베이스를 만들 수 있습니다. 프로필 데이터 정의는 구성 파일 web.config에 저장됩니다.
애플리케이션이 이름, 주소, 생년월일 등과 같은 사용자 세부 정보를 기억하도록 할 샘플 웹사이트를 만들어 보겠습니다. web.config 파일의 요소를 사용하여 프로필 세부 정보를 추가합니다.
<configuration><system.web><profile> <properties> <add name="이름" type ="String"/> <add name="Birthday" type ="System.DateTime"/> <group name="주소" "> <add name="Street"/> <add name="City"/> <add name="State"/> <add name="Zipcode"/> </group> </properties></profile></system.web></configuration>
web.config 파일에 프로필이 정의되면 현재 HttpContext에 있는 Profile 특성을 통해 해당 프로필을 사용할 수 있으며 페이지를 통해 사용할 수 있습니다.
기능 파일에 정의된 사용자 입력을 캡처하는 텍스트 상자와 데이터를 제출하는 버튼을 추가합니다.
기능 파일 정보를 표시하려면 Page_load를 업데이트하세요.
System 사용;System.Data 사용;System.Configuration 사용;System.Web 사용;System.Web.Security 사용;System.Web.UI 사용;System.Web.UI.WebControls 사용;System.Web.UI.WebControls 사용. WebParts;System.Web.UI.HtmlControls 사용;공용 부분 클래스 _Default : System.Web.UI.Page { protected void Page_Load(객체 전송자, EventArgs e) { if (!this.IsPostBack) { ProfileCommon pc=this.Profile.GetProfile(Profile.UserName); if (pc != null) { this.txtname.Text = pc.Name = this.txtaddr.Text = pc.Address.Street ; this.txtcity.Text = pc.Address.City; this.txtstate.Text = pc.Address.State; this.txtzip.Text = pc.Address.Zipcode; this.Calendar1.SelectedDate = pc.Birthday } } }
제출 버튼에 대해 다음 핸들을 작성하고 기능 파일에 사용자 데이터를 저장합니다.
protected void btnsubmit_Click(객체 발신자, EventArgs e){ ProfileCommon pc=this.Profile.GetProfile(Profile.UserName); if (pc != null) { pc.Name = this.txtname.Text = this; .txtaddr.Text; pc.Address.City = this.txtcity.Text; this.txtstate.Text; pc.Address.Zipcode = this.txtzip.Text; pc.Birthday = this.Calendar1.SelectedDate();
페이지가 처음 실행되면 사용자는 정보를 입력해야 합니다. 그러나 다음 번에는 사용자의 세부 정보가 자동으로 로드됩니다.
이미 사용한 name 및 type 속성 외에도 요소에는 다른 속성이 있습니다. 다음 표에는 이러한 속성 중 일부가 나와 있습니다.
재산 | 설명하다 |
---|---|
이름 | 속성의 이름입니다. |
유형 | 유형의 기본값은 문자열이지만 완전한 클래스 이름을 데이터 유형으로 허용합니다. |
AS 직렬화 | 이 값을 직렬화할 때 사용할 형식입니다. |
읽기 전용 | 읽기 전용 서명 파일 값은 변경할 수 없습니다. 이 속성의 기본값은 false입니다. |
기본값 | 서명 파일이 존재하지 않거나 정보가 없는 경우 사용되는 기본값입니다. |
익명 허용 | 이 속성을 익명 파일에 사용할 수 있는지 여부를 나타내는 부울 값입니다. |
공급자 | 이 속성을 관리하는 데 사용해야 하는 프로필 공급자입니다. |
익명 개인화를 통해 사용자는 자신을 식별하기 전에 웹사이트를 개인화할 수 있습니다. 예를 들어 Amazon.com에서는 사용자가 로그인하기 전에 장바구니에 항목을 추가할 수 있습니다. 이 기능을 활성화하려면 web.config 파일을 다음과 같이 구성하면 됩니다.
<anonymousIdentification 활성화 ="true" cookieName=".ASPXANONYMOUSUSER" cookieTimeout="120000" cookiePath="/" cookieRequiresSSL="false" cookieSlidingExpiration="true" cookieprotection="암호화" Coolieless="UseDeviceProfile"/>