Una cosa che ho trovato interessante è che se si desidera tenere traccia i propri utenti è quello di implementare un filtro azione.
Se si utilizza ASP.NET MVC 3, è sufficiente registrare questo filtro come filtro globale e sarà possibile registrare ogni accesso a un'azione in ciascun controller.
L'intero HttpContext è disponibile in questi metodi.
public class TrackerFilterAttribute : ActionFilterAttribute
{
public TrackerFilterAttribute()
{
}
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
base.OnActionExecuting(filterContext);
//TODO: Do my tracking here.
}
}
E questo può essere invocato nel seguente modo:
public class MvcApplication : System.Web.HttpApplication
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
filters.Add(new TrackerFilterAttribute());
}
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
}
}
fonte
2011-01-20 16:05:15
Se si desidera tenere traccia del software desktop, è possibile provare http://www.trackerbird.com – Dive50