Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.NET MVC-检测在页面上花费的时间_C#_Asp.net Mvc - Fatal编程技术网

C# ASP.NET MVC-检测在页面上花费的时间

C# ASP.NET MVC-检测在页面上花费的时间,c#,asp.net-mvc,C#,Asp.net Mvc,有没有人知道如何在ASP.NET MVC中保存和捕获花费在页面上的时间 编辑以澄清几点: 从本质上说,该系统与植入式广告有关。我正在跟踪特定产品的视图。然而,为了更进一步,我希望看到客户在特定产品页面上停留的平均时间 我希望在本地保存和存储数据,以便与当前捕获的其他数据一起对其进行趋势分析-我希望尽可能避免使用外部服务 我主要关心的是在页面加载和退出时捕获事件-这显然很困难a)因为ASP.NET MVC没有普通ASP.NET那么丰富/奇特的事件管道,b)用户可能会关闭浏览器/导航到不同的站点,从

有没有人知道如何在ASP.NET MVC中保存和捕获花费在页面上的时间

编辑以澄清几点:

  • 从本质上说,该系统与植入式广告有关。我正在跟踪特定产品的视图。然而,为了更进一步,我希望看到客户在特定产品页面上停留的平均时间
  • 我希望在本地保存和存储数据,以便与当前捕获的其他数据一起对其进行趋势分析-我希望尽可能避免使用外部服务
  • 我主要关心的是在页面加载和退出时捕获事件-这显然很困难a)因为ASP.NET MVC没有普通ASP.NET那么丰富/奇特的事件管道,b)用户可能会关闭浏览器/导航到不同的站点,从而使问题稍微复杂化
  • 提前感谢,,
    JP

    我想你可以有一个ajax函数,它每x秒或几分钟调用一次home,只需一个小程序包sessionId和page/url,在服务器端,它会知道如何将x时间添加到适当的结构中

    另一种方法是使用一个隐藏字段,该字段具有页面的创建时间戳,然后拦截页面的更改/关闭/导航。离开,然后用时差(或2个值和calc服务器端)和页面/url打电话回家。。。但我认为,如果浏览器突然崩溃,或者电话丢失,页面已经更改,您可能会冒无法获取信息的风险


    只是一些建议

    视情况而定,您可以使用javascript跟踪时间并将其显示在页面上

    如果服务器上需要时间,并且它在发布的表单上,您可以将时间放入一个隐藏字段,然后在发布时您可以提取值并计算差值

    你可以试着把它储存在饼干里。每次用户请求新页面时,您都可以提取页面标题和时间戳,然后使用新页面和时间戳设置cookie


    您还可以使用某种商业智能套件。例如或

    我过去用过两种方法

    (一)

    阅读iis日志,查看同一用户请求one.html和two.html之间的时间间隔

    (二)


    javascript计数器和onunload函数,它向记录时间的服务发送ajax调用

    您能提供更多详细信息吗?他们是HttpPost的吗?+1用于谷歌分析。。。据我所知,Omniture是付费的(而且非常昂贵),我的经验不是很令人满意。如何添加每X秒调用一次的ajax函数?