Я не могу перейти от одного "сайта" к другому в рамках одного сеанса, который есть у каждого сайта, на
создан другой сеанс.
, но я вам очень благодарен, потому чтоВы дали мне представление о том, как решить эту проблему
, вот что я сделал: я создал счетчик класса со словарем "onlineList", где я автоматически создал ключ для каждого сайта:
public abstract class counter{
public static Dictionary<string, int> onlineList = new Dictionary<string, int>();
//do add one count
public static void doSiteCountOn(string siteID)
{
if (onlineList.ContainsKey(siteID))
{
onlineList[siteID] += 1;
}
else
{
onlineList.Add(siteID, 1);
}
}
//do less one count
public static void doSiteCountOff(string siteID)
{
if (onlineList.ContainsKey(siteID))
{
onlineList[siteID] -= 1;
}
else
{
onlineList.Add(siteID, 0);
}
}
//get the count
public static string onlineCount(string siteID)
{
if (onlineList.ContainsKey(siteID))
{
return onlineList[siteID].ToString();
}
else
{
return "0";
}
}
//reset the count if needed
public static void resetCount(string siteID)
{
if (onlineList.ContainsKey(siteID))
{
onlineList[siteID] = 0;
}
}}
на своей базовой странице я проверяю, есть ли Session ["siteID"], и если нет, я запускаю один и делаю свой счетчик, добавляющий 1 к счетчику сайта:
if (Session["siteID"] == null){
Session["siteID"] = _siteID;
counter.doSiteCountOn(_siteID);}
и, наконец, на моем Session_Endна один счет меньше:
void Session_End(object sender, EventArgs e){
if (Session["siteID"] != null)
{
counter.doSiteCountOff(Session["siteID"].ToString());
}}
благодарю за помощь и извиняюсь за поздний ответ
cheinan