Сначала переименуйте страницу, чтобы она имела расширение .aspx
, а также добавьте код позади файла.
Во-вторых, добавьте этот метод к коду:
private void WriteLog()
{
string currentFileName = Path.GetFileNameWithoutExtension(Request.FilePath);
string logFileName = string.Format("{0}_{1}.log.txt", currentFileName, DateTime.Now.ToString("ddMMyyyy"));
string logFilePath = Server.MapPath(logFileName);
string IP = Request.ServerVariables["REMOTE_ADDR"];
string logMessage = string.Format("[{0}] [IP: {1}] [Page: {2}]", DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss"), IP, Request.FilePath);
File.AppendAllLines(logFilePath, new string[] { logMessage });
}
И, наконец, просто вызовите вышеуказанный метод из события Page_Load
, например,
protected void Page_Load(object sender, EventArgs e)
{
WriteLog();
}
Это создаст текстовый файл с тем же именем, что и .aspx
(в том же месте) плюс текущая дата, чтобы избежать засорения того же файла миллионами строк, и добавит одну строку для каждого попадания.
Редактировать: это код .NET 4.0, поэтому вам придется определить его как целевую платформу как в Visual Studio, если вы ее используете, так и в конфигурации IIS. web.config
должен быть обновлен Studio, и если вы его не используете, вот дополнительные строки:
<system.web>
<httpRuntime requestValidationMode="2.0" />
<compilation debug="true" targetFramework="4.0" />
</system.web>