Hi
I m sending my code which is given below i m using this code to find the page title of given pageid its working fine whe i use in aspx.cs file but show error :Missing current principal. when using global.asax page.
I m using method getPageName(Pagedetails.page_id);for finding page title pass here page id and get page title its working fine in normal aspx.cs file but show error in global.asax
Code is given below
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Web;
using
System.Web.Security;
using
System.Web.SessionState;
using
System.IO;
using
System.Security.Cryptography;
using
System.Text;
using
System.Net.Mail;
using
System.Net;
using
SitefinityWebApp.DAL;
using
SitefinityWebApp.Custom.Common;
using
SitefinityWebApp.Custom.UserProfile;
using
Telerik.Sitefinity;
using
Telerik.Web.UI;
using
Telerik.Sitefinity.Model;
using
Telerik.OpenAccess;
using
Telerik.Sitefinity.Security;
using
Telerik.Sitefinity.Web;
using
Telerik.Sitefinity.Modules.Pages;
using
Telerik.Sitefinity.Pages.Model;
namespace
SitefinityWebApp
public class Global : System.Web.HttpApplication
protected void Application_Start(object sender, EventArgs e)
AuctionTimer();
private void AuctionTimer()
System.Timers.
Timer _timer = new System.Timers.Timer();
//_timer.Interval = Convert.ToDouble(TimeSpan.FromSeconds(1));
//// 60 * 1000 for 1 minute
//// 1000 for 1 second
////_timer.Interval = 60 * 1000 * 60;
_timer.Interval = 60 * 1000 * 2;
_timer.Elapsed +=
new System.Timers.ElapsedEventHandler(timer_Elapsed);
_timer.Start();
public void timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
DateTime CurrTime = DateTime.Now;
string Timewithhoursandmin = String.Format("0:HH", CurrTime);
if (Timewithhoursandmin.IndexOf("15") >= 0)
CasasAccessLayerDataContext db = new CasasAccessLayerDataContext();
var PageList = from ctry in db.pagerevisits
.Where(ctry => ctry.revisit_dt ==
Convert.ToDateTime(System.DateTime.Now.AddDays(1).ToShortDateString()))
select ctry;
if (PageList.Count() > 0)
foreach (var Pagedetails in PageList)
Guid currentUserId = new Guid(Pagedetails.assigneduser_id);
var userManager = UserManager.GetManager("Default");
var user = userManager.GetUser(currentUserId);
// HttpContext.Current.User = System.Security.Principal.WindowsIdenti;
var dddd = System.Threading.Thread.CurrentPrincipal;
if (user != null)
var userEmail = user.Email;
var userEmailExist = userManager.EmailExists(userEmail);
string pageTitle = getPageName(Pagedetails.page_id);
DateTime pageDate = Pagedetails.revisit_dt;
if (userEmailExist == true)
//build the body
string emailsub = "CASAS Revisite Page";
var emailBody = new StringBuilder();
// emailBody.Append("Dear kindly visit the page " + ":" + pageTitle + "from date" + ":" + pageDate + "<br />");
emailBody.Append(
"Dear kindly visit the page from date" + ":" + string.Format("0:d",pageDate) + "<br />");
emailBody.AppendFormat(
"Regards<br />");
emailBody.AppendFormat(
"Casas Team");
Utils.sendEmail(userEmail, "", "", "noreply@idhasoft.com", "Casas Service", emailsub, emailBody.ToString());
public string getPageName(string _id)
Guid currentPageId = new Guid(_id);
if (_id != null)
PageManager pManager = PageManager.GetManager();
var page = pManager.GetPageNode(currentPageId);//Error comes
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Web;
using
System.Web.Security;
using
System.Web.SessionState;
using
System.IO;
using
System.Security.Cryptography;
using
System.Text;
using
System.Net.Mail;
using
System.Net;
using
SitefinityWebApp.DAL;
using
SitefinityWebApp.Custom.Common;
using
SitefinityWebApp.Custom.UserProfile;
using
Telerik.Sitefinity;
using
Telerik.Web.UI;
using
Telerik.Sitefinity.Model;
using
Telerik.OpenAccess;
using
Telerik.Sitefinity.Security;
using
Telerik.Sitefinity.Web;
using
Telerik.Sitefinity.Modules.Pages;
using
Telerik.Sitefinity.Pages.Model;
namespace
SitefinityWebApp
public class Global : System.Web.HttpApplication
protected void Application_Start(object sender, EventArgs e)
AuctionTimer();
private void AuctionTimer()
System.Timers.
Timer _timer = new System.Timers.Timer();
//_timer.Interval = Convert.ToDouble(TimeSpan.FromSeconds(1));
//// 60 * 1000 for 1 minute
//// 1000 for 1 second
////_timer.Interval = 60 * 1000 * 60;
_timer.Interval = 60 * 1000 * 2;
_timer.Elapsed +=
new System.Timers.ElapsedEventHandler(timer_Elapsed);
_timer.Start();
public void timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
DateTime CurrTime = DateTime.Now;
string Timewithhoursandmin = String.Format("0:HH", CurrTime);
if (Timewithhoursandmin.IndexOf("15") >= 0)
CasasAccessLayerDataContext db = new CasasAccessLayerDataContext();
var PageList = from ctry in db.pagerevisits
.Where(ctry => ctry.revisit_dt ==
Convert.ToDateTime(System.DateTime.Now.AddDays(1).ToShortDateString()))
select ctry;
if (PageList.Count() > 0)
foreach (var Pagedetails in PageList)
Guid currentUserId = new Guid(Pagedetails.assigneduser_id);
var userManager = UserManager.GetManager("Default");
var user = userManager.GetUser(currentUserId);
// HttpContext.Current.User = System.Security.Principal.WindowsIdenti;
var dddd = System.Threading.Thread.CurrentPrincipal;
if (user != null)
var userEmail = user.Email;
var userEmailExist = userManager.EmailExists(userEmail);
string pageTitle = getPageName(Pagedetails.page_id);
DateTime pageDate = Pagedetails.revisit_dt;
if (userEmailExist == true)
//build the body
string emailsub = "CASAS Revisite Page";
var emailBody = new StringBuilder();
// emailBody.Append("Dear kindly visit the page " + ":" + pageTitle + "from date" + ":" + pageDate + "<br />");
emailBody.Append(
"Dear kindly visit the page from date" + ":" + string.Format("0:d",pageDate) + "<br />");
emailBody.AppendFormat(
"Regards<br />");
emailBody.AppendFormat(
"Casas Team");
Utils.sendEmail(userEmail, "", "", "noreply@idhasoft.com", "Casas Service", emailsub, emailBody.ToString());
public string getPageName(string _id)
Guid currentPageId = new Guid(_id);
if (_id != null)
PageManager pManager = PageManager.GetManager();
var page = pManager.GetPageNode(currentPageId);//error here Missing current principal.
return page.Title;
else
return string.Empty;
protected void Session_Start(object sender, EventArgs e)
protected void Application_BeginRequest(object sender, EventArgs e)
protected void Application_AuthenticateRequest(object sender, EventArgs e)
protected void Application_Error(object sender, EventArgs e)
protected void Session_End(object sender, EventArgs e)
protected void Application_End(object sender, EventArgs e)
return page.Title;
else
return string.Empty;
protected void Session_Start(object sender, EventArgs e)
protected void Application_BeginRequest(object sender, EventArgs e)
protected void Application_AuthenticateRequest(object sender, EventArgs e)
protected void Application_Error(object sender, EventArgs e)
protected void Session_End(object sender, EventArgs e)
protected void Application_End(object sender, EventArgs e)
If any solution please send me waiting your response it very neede for me
Regards
Ashok