Hi coder i have an application in which i have different pages
On my first page: i have form. When i enter details and click on submit button data store in database.
On my second page i have a grdiview where i can view details from database of the form I have an edit link on that when i click on edit link it will redirect to form page where submit button become updated button and user can update details.
Now what i want is after one hour of modification other user of the application get a notification on report page that updation is being done. I dont want to user sqldependency
This is form page code:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
lblFirstName.Text = Session["FirstName"].ToString();
if (Session["portal"] != null)
{
ddlPortal.SelectedIndex = ddlPortal.Items.IndexOf(ddlPortal.Items.FindByValue(Convert.ToString(Session["portal"])));
}
if (!string.IsNullOrEmpty(Request.QueryString["buttonValue"]))
{
string btnValue = Request.QueryString["buttonValue"];
if (btnValue == "Update")
{
btnSubmit.Text = "Update";
}
else if (btnValue == "Submit")
{
btnSubmit.Text = "Submit";
}
else
{
Response.Write("error");
}
}
else
{
this.btnSubmit.Text = "Submit";
}
string ID = Request.QueryString["ID"];
cmd = new SqlCommand("Select * from Form where ID='" + ID + "'", con);
con.Open();
da = new SqlDataAdapter(cmd);
dt.Clear();
da.Fill(dt);
if (dt.Rows.Count > 0)
{
ddlPortal.SelectedValue = dt.Rows[0][2].ToString();
tbTid.Text = dt.Rows[0][3].ToString();
tbPNR.Text = dt.Rows[0][4].ToString();
tbTicketNumber.Text = dt.Rows[0][5].ToString();
tbESACCode.Text = dt.Rows[0][6].ToString();
tbWaiverCode.Text = dt.Rows[0][7].ToString();
tbRemarks.Text = dt.Rows[0][8].ToString();
tbUnusedTicketAmount.Text = dt.Rows[0][9].ToString();
ddlUnusedAmount.SelectedValue = dt.Rows[0][10].ToString();
tbAirlinePenality.Text = dt.Rows[0][11].ToString();
ddlAirlinePenality.SelectedValue = dt.Rows[0][12].ToString();
tbNetRefundProcess.Text = dt.Rows[0][13].ToString();
ddlNetRefundProcess.SelectedValue = dt.Rows[0][14].ToString();
tbRefundableCommision.Text = dt.Rows[0][15].ToString();
ddlRefundableCommission.SelectedValue = dt.Rows[0][16].ToString();
tbCouponRefund.Text = dt.Rows[0][17].ToString();
ddlRefundType.SelectedValue = dt.Rows[0][18].ToString();
}
con.Close();
}
if (ddlPortal.SelectedValue == "Select")
{
FirstForm.Visible = false;
}
}
private void Submit()
{
string d = DateTime.Now.ToString();
using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["BartConnectionString"].ToString()))
{
con.Open();
string Name = lblFirstName.Text;
string Portal = ddlPortal.SelectedValue;
string TID = tbTid.Text;
string PNR = tbPNR.Text;
string TicketNumber = tbTicketNumber.Text;
string ESACCode = tbESACCode.Text;
string WaiverCode = tbWaiverCode.Text;
string Remarks = tbRemarks.Text;
string UnusedTicketAmount = tbUnusedTicketAmount.Text;
string UnusedAmount = ddlUnusedAmount.SelectedValue;
string AirlinePenality = tbAirlinePenality.Text;
string Airline = ddlAirlinePenality.SelectedValue;
string NetRefundProcess = tbNetRefundProcess.Text;
string NetRefund = ddlNetRefundProcess.SelectedValue;
string RefundableCommission = tbRefundableCommision.Text;
string Refundable = ddlRefundableCommission.SelectedValue;
string CouponRefunded = tbCouponRefund.Text;
string RefundType = ddlRefundType.SelectedValue;
using (SqlCommand cmd = con.CreateCommand())
{
cmd.CommandText = "insert into Form(Name,Portal,TID,PNR,TicketNumber,ESACCode,WaiverCode,Remarks,UnusedTicketAmount,ddlUnusedAmount, AirlinePenality, ddlAirlinePenality, NetRefundProcess, ddlNetRefundProcess, RefundableCommission, ddlRefundableCommission, CouponRefunded,RefundType,DateTime) values('" + Name + "','" + Portal + "','" + TID + "','" + PNR + "','" + TicketNumber + "', '" + ESACCode + "', '" + WaiverCode + "', '" + Remarks + "','" + UnusedTicketAmount + "','" + UnusedAmount + "','" + AirlinePenality + "','" + Airline + "','" + NetRefundProcess + "','" + NetRefund + "','" + RefundableCommission + "','" + Refundable + "','" + CouponRefunded + "','" + RefundType + "','" + d + "')";
cmd.Parameters.AddWithValue("@Name", lblFirstName.Text.Trim());
cmd.Parameters.AddWithValue("@Portal", ddlPortal.SelectedIndex);
cmd.Parameters.AddWithValue("@TID", tbTid.Text.Trim());
cmd.Parameters.AddWithValue("@PNR", tbPNR.Text.Trim());
cmd.Parameters.AddWithValue("@TicketNumber", tbTicketNumber.Text.Trim());
cmd.Parameters.AddWithValue("@ESACCode", tbESACCode.Text.Trim());
cmd.Parameters.AddWithValue("@WaiverCode", tbWaiverCode.Text.Trim());
cmd.Parameters.AddWithValue("@Remarks", tbRemarks.Text.Trim());
cmd.Parameters.AddWithValue("@UnusedTicketAmount", tbUnusedTicketAmount.Text.Trim());
cmd.Parameters.AddWithValue("@ddlUnusedAmount", ddlUnusedAmount.SelectedIndex);
cmd.Parameters.AddWithValue("@AirlinePenality", tbAirlinePenality.Text.Trim());
cmd.Parameters.AddWithValue("@ddlAirlinePenality", ddlAirlinePenality.SelectedIndex);
cmd.Parameters.AddWithValue("@NetRefundProcess", tbNetRefundProcess.Text.Trim());
cmd.Parameters.AddWithValue("@ddlNetRefundProcess", ddlNetRefundProcess.SelectedIndex);
cmd.Parameters.AddWithValue("@RefundableCommission", tbRefundableCommision.Text.Trim());
cmd.Parameters.AddWithValue("@ddlRefundableCommission", ddlRefundableCommission.SelectedIndex);
cmd.Parameters.AddWithValue("@CouponRefunded", tbCouponRefund.Text.Trim());
cmd.Parameters.AddWithValue("@RefundType", ddlRefundType.SelectedIndex);
cmd.ExecuteNonQuery();
}
con.Close();
tbTid.Text = "";
tbPNR.Text = "";
tbTicketNumber.Text = "";
tbESACCode.Text = "";
tbWaiverCode.Text = "";
tbRemarks.Text = "";
tbRemarks.Text = "";
tbUnusedTicketAmount.Text = "";
tbAirlinePenality.Text = "";
tbNetRefundProcess.Text = "";
tbRefundableCommision.Text = "";
tbCouponRefund.Text = "";
lblRefundType.Text = "";
tbTid.Focus();
}
}
private void Update()
{
con.Open();
string id = Request.QueryString["ID"].ToString();
string d = DateTime.Now.ToString();
string query = "update Form set Portal='" + ddlPortal.SelectedValue + "',Tid='" + tbTid.Text + "',PNR='" + tbPNR.Text + "',TicketNumber='" + tbTicketNumber.Text + "',ESACCode='" + tbESACCode.Text + "',WaiverCode='" + tbWaiverCode.Text + "',Remarks='" + tbRemarks.Text + "',UnusedTicketAmount='" + tbUnusedTicketAmount.Text + "',ddlUnusedAmount='" + ddlUnusedAmount.SelectedValue + "',AirlinePenality='" + tbAirlinePenality.Text + "',ddlAirlinePenality='" + ddlAirlinePenality.SelectedValue + "',NetRefundProcess='" + tbNetRefundProcess.Text + "',ddlNetRefundProcess='" + ddlNetRefundProcess.SelectedValue + "',RefundableCommission='" + tbRefundableCommision.Text + "',ddlRefundableCommission='" + ddlRefundableCommission.SelectedValue + "',CouponRefunded='" + tbCouponRefund.Text + "',RefundType='" + ddlRefundType.SelectedValue + "',DateTime='" + d + "' where ID='" + id + "'";
cmd = new SqlCommand(query, con);
cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
con.Close();
Response.Redirect("~/Admin/PortalReport.aspx", false);
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
if (btnSubmit.Text == "Submit")
{
this.Submit();
}
else if (btnSubmit.Text == "Update")
{
this.Update();
}
}
How can i notify other user of this application that some data is updated after one hour i just want to show an message on a label may be that some data is updated to other user apart from the user that make modification
Thanks in advance !!