ASP.NET 网页 (Razor) 站点的跟踪访问者信息 (分析)

作者 Tom FitzMacken

本文介绍如何使用帮助程序向 ASP.NET 网页 (Razor) 网站中的页面添加网站分析。

学习内容:

  • 如何将有关网站流量的信息发送到分析提供程序。

以下是本文中介绍的 ASP.NET 编程功能:

  • 帮助 Analytics 程序。

本教程中使用的软件版本

  • ASP.NET 网页 (Razor) 2
  • ASP.NET Web 帮助程序库 (NuGet 包)

分析是衡量网站流量的技术的一个通用术语,可让你了解用户如何使用网站。 提供许多分析服务,包括 Google、Yahoo、StatCounter 等服务。

分析的工作方式是向分析提供商注册一个帐户,在其中注册要跟踪的网站。提供程序向你发送一段 JavaScript 代码,其中包含帐户的 ID 或跟踪代码。 将 JavaScript 代码片段添加到要跟踪的网站上的网页。 (通常,将分析代码段添加到网站中每个页面上显示的页脚、布局页或其他 HTML 标记中。) 当用户请求包含这些 JavaScript 代码段之一的页面时,代码片段会将当前页面的相关信息发送给分析提供程序,后者记录有关页面的各种详细信息。

若要查看站点统计信息,请登录到分析提供程序的网站。 然后,您可以查看有关站点的各种报告,例如:

  • 单个页面的页面视图数。 这会告诉你 (大致) 有多少人正在访问该网站,以及你网站上的哪些页面是最受欢迎的。

  • 用户在特定页面上花费的时间。 这可以告诉你诸如主页是否保持了人们的兴趣之类的事情。

  • 用户在访问您的网站之前所访问的网站。 这有助于了解流量是否来自链接、搜索等。

  • 用户访问您的网站的时间以及他们停留的时间。

  • 访问者来自哪些国家/地区。

  • 访问者使用的浏览器和操作系统。

    Ch14traffic-1

使用帮助程序将 Analytics 添加到页面

ASP.NET 网页包括多个分析帮助程序,Analytics.GetGoogleHtml (、 Analytics.GetYahooHtmlAnalytics.GetStatCounterHtml) ,以便轻松管理用于分析的 JavaScript 代码片段。 你需要做的就是将帮助程序添加到页面,而不是找出放置 JavaScript 代码的方式和位置。 需要提供的唯一信息是帐户名称、ID 或跟踪代码。 (对于 StatCounter,还必须提供一些附加值。)

在此过程中,你将创建一个使用 GetGoogleHtml 帮助程序的布局页。 如果已有一个其他分析提供程序的帐户,则可以改用该帐户,并根据需要稍作调整。

注意

创建分析帐户时,需要注册要跟踪的站点的 URL。 如果要在本地计算机上测试所有内容,则不会跟踪实际流量, (唯一) 流量,因此无法记录和查看站点统计信息。 但此过程演示如何将分析帮助程序添加到页面。 发布站点时,实时站点将向分析提供商发送信息。

  1. 如在 ASP.NET 网页网站中安装帮助程序中所述,将 ASP.NET Web 帮助程序库添加到网站(如果尚未添加)。

  2. 使用 Google Analytics 创建帐户并记录帐户名称。

  3. 创建名为 Analytics.cshtml 的 布局页并添加以下标记:

    @using Microsoft.Web.Helpers;
    <!DOCTYPE html>
    <html>
      <head>
        <title>Analytics Test</title>
      </head>
      <body>
        <h1>Analytics Test Page</h1>
        <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit,
        sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. </p>
        <div id="footer">
          &copy; 2012 MySite
        </div>
        @Analytics.GetGoogleHtml("myaccount")
      </body>
    </html>
    

    注意

    必须在标记) 之前</body>,在网页正文 (中调用Analytics帮助程序。 否则,浏览器将不会运行脚本。

    如果使用的是其他分析提供程序,请改用以下帮助程序之一:

    • (Yahoo) @Analytics.GetYahooHtml("myaccount")
    • (StatCounter) @Analytics.GetStatCounterHtml("project", "security")
  4. 将 替换为 myaccount 在步骤 1 中创建的帐户、ID 或跟踪代码的名称。

  5. 在浏览器中运行页面。 (在运行页面之前,请确保已在 “文件” 工作区中选择该页面。)

  6. 在浏览器中,查看页面源。 你将能够看到呈现的分析代码:

    <!DOCTYPE html>
    <html>
      <head>
        <title>Analytics Test</title>
      </head>
      <body>
        <h1>Analytics Test Page</h1>
        <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit,
        sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
        <div id="footer">
          &copy; 2012 MySite
        </div>
        <script type="text/javascript">
          var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
          document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
        </script>
        <script type="text/javascript">
          try{
          var pageTracker = _gat._getTracker("myaccount");
          pageTracker._trackPageview();
          } catch(err) {}
        </script>
      </body>
    </html>
    
  7. 登录到 Google Analytics 站点并检查站点的统计信息。 如果在实时网站上运行该页面,则会看到一个条目,该条目记录了对页面的访问。

其他资源