Default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table>
<tr>
<td>User Name</td>
<td>
<asp:TextBox ID="txtUserName" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td>Password</td>
<td>
<asp:TextBox ID="txtPassword" runat="server" TextMode="Password">
</asp:TextBox></td>
</tr>
<tr>
<td>
<asp:Button ID="btnLogin" runat="server" Text="Log in" OnClick="btnLogin_Click" /></td>
<td>
<asp:Label ID="lblError" runat="server" Text=""></asp:Label></td>
</tr>
</table>
<asp:LinkButton ID="LinkButton1" runat="server"
PostBackUrl="~/Registration.aspx">
Register</asp:LinkButton>
</div>
</form>
</body>
</html>
Default.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnLogin_Click(object sender, EventArgs e)
{
RegistrationService.ReviewerRegistrationClient rrc
= new RegistrationService.ReviewerRegistrationClient();
int key=rrc.ReviewerLogin
(txtUserName.Text, txtPassword.Text);
if (key != 0)
{
Session["userKey"] = key;
Response.Redirect("NewReview.aspx");
}
else
{
lblError.Text = "Invalid Login";
}
}
}
Registration.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Registration.aspx.cs" Inherits="Registration" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<p>First Name <br />
<asp:TextBox ID="txtFirstName" runat="server"></asp:TextBox>
</p>
<p>Last Name <br />
<asp:TextBox ID="txtLastName" runat="server"></asp:TextBox>
</p>
<p>Email <br />
<asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
</p>
<p>UserName <br />
<asp:TextBox ID="txtUserName" runat="server"></asp:TextBox>
</p>
<p>Password <br />
<asp:TextBox ID="txtPassword" runat="server"></asp:TextBox>
</p>
<p><asp:Button runat="server" ID="btnRegister" Text="Register" OnClick="btnRegister_Click" /><br />
<asp:Label ID="lblError" runat="server" Text=""></asp:Label>
</p>
<asp:LinkButton ID="LinkButton1" runat="server"
PostBackUrl="~/Default.aspx">Log in</asp:LinkButton>
</div>
</form>
</body>
</html>
Registration.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using RegistrationService;
public partial class Registration : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnRegister_Click(object sender, EventArgs e)
{
Reviewer r = new Reviewer();
r.ReviewerFirstName = txtFirstName.Text;
r.ReviewerLastName = txtLastName.Text;
r.ReviewerUserName = txtUserName.Text;
r.ReviewerEmail = txtEmail.Text;
r.ReviewPlainPassword = txtPassword.Text;
ReviewerRegistrationClient rrc = new
ReviewerRegistrationClient();
bool result=rrc.Register(r);
if (result)
lblError.Text = "Reviewer Registered";
else
lblError.Text = "Registration Failed";
}
}
NewReview.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="NewReview.aspx.cs" Inherits="NewReview" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:DropDownList ID="ddlBooks" runat="server"></asp:DropDownList>
<p>Title<br />
<asp:TextBox ID="txtTitle" runat="server"></asp:TextBox>
</p>
<p>Rating
<asp:RadioButtonList ID="RadioButtonList1" runat="server">
<asp:ListItem Text="1" Value="1"></asp:ListItem>
<asp:ListItem Text="2" Value="2"></asp:ListItem>
<asp:ListItem Text="3" Value="3"></asp:ListItem>
<asp:ListItem Text="4" Value="4"></asp:ListItem>
<asp:ListItem Text="5" Value="5"></asp:ListItem>
</asp:RadioButtonList>
</p>
<p>The Review<br />
<asp:TextBox ID="txtReview" TextMode="MultiLine"
runat="server" Height="130px" Width="328px"></asp:TextBox>
</p>
<p>
<asp:Button ID="btnAddReview" runat="server" Text="Add Review"
OnClick="btnAddReview_Click"></asp:Button> <br />
<asp:Label ID="lblError" runat="server" Text=""></asp:Label>
</p>
</div>
</form>
</body>
</html>
NewReview.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using NewReviewService;
public partial class NewReview : System.Web.UI.Page
{
CreateReviewServiceClient crc = new CreateReviewServiceClient();
protected void Page_Load(object sender, EventArgs e)
{
if (Session["userKey"] != null)
{
if (!IsPostBack)
{
Book[] books = crc.GetBooks();
ddlBooks.DataSource = books;
ddlBooks.DataTextField = "BookTitle";
ddlBooks.DataValueField = "BookKey";
ddlBooks.DataBind();
}
}
else
{
Response.Redirect("Default.aspx");
}
}
protected void btnAddReview_Click(object sender, EventArgs e)
{
Review r = new Review();
r.BookKey = int.Parse(ddlBooks.SelectedValue.ToString());
r.ReviewerKey = (int)Session["userKey"];
r.ReviewTitle = txtTitle.Text;
r.ReviewRating = int.Parse(RadioButtonList1.SelectedValue.ToString());
r.ReviewText = txtReview.Text;
bool good = crc.WriteReview(r);
if(good)
{
lblError.Text="review saved";
}
else
{
lblError.Text = "something went horribly wrong";
}
}
}