C# vs PHP

Apr. 1st, 2008 12:37 pm
[personal profile] robinbobin
Вот все говорят Кремль, Кремль C#, C#
но я плачу когда вижу такой код.
идея такая
если кука не установлена, то установить и увеличить счетчик на 1.


< %@ WebHandler Language="C#" Class="SessionCounter" % >

using System.IO;
using System.Web;
using System.Web.SessionState;

public class SessionCounter : IHttpHandler, IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
int sessionCount;
using (FileStream fileStream = new FileStream(context.Server.MapPath("session_count.txt"), FileMode.OpenOrCreate))
{
using (StreamReader streamReader = new StreamReader(fileStream))
{
using (StreamWriter streamWriter = new StreamWriter(fileStream))
{
int.TryParse(streamReader.ReadLine(), out sessionCount);

if (context.Session["been_here_before"] == null || string.IsNullOrEmpty(context.Session["been_here_before"].ToString()))
{
context.Session["been_here_before"] = "Yes";
sessionCount++;
fileStream.Position = 0;
fileStream.SetLength(0);
streamWriter.Write(sessionCount);
}
}
}
}
context.Response.ContentType = "text/plain";
context.Response.Write(sessionCount);
}

public bool IsReusable
{
get
{
return false;
}
}
}


Тада еще проще, в стринице делаешь пропертю:

private int SessionCount
{
int sessionCount;
using (FileStream fileStream = new FileStream(Server.MapPath("session_count.txt"), FileMode.OpenOrCreate))
{
using (StreamReader streamReader = new StreamReader(fileStream))
{
using (StreamWriter streamWriter = new StreamWriter(fileStream))
{
int.TryParse(streamReader.ReadLine(), out sessionCount);

if (Session["been_here_before"] == null || string.IsNullOrEmpty(Session["been_here_before"].ToString()))
{
Session["been_here_before"] = "Yes";
sessionCount++;
fileStream.Position = 0;
fileStream.SetLength(0);
streamWriter.Write(sessionCount);
}
}
}
}
return sessionCount;
{


При загрузке ставишь своему лэйблу значение этой проперти:
labelCount.Text = SessionCount.ToString();

http://community.livejournal.com/ru_csharp/111137.html

Profile

robinbobin

December 2016

S M T W T F S
     1 2 3
45 6 7 8 910
1112 13 14 15 16 17
18192021 22 23 24
25262728293031

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 17th, 2025 04:46 pm
Powered by Dreamwidth Studios