1

我正在开发一个Google Analytics客户端,用于从Analytics API收集数据的MVC应用程序,我试图在视图中显示数据。最终目标是通过Google图表显示Google Analytics数据。在视图中显示Google Analytics数据

但是我不确定如何正确构造数据。每个度量标准都是一个带有KeyValuePair的字典,其中度量标准名称是关键字,值是实际值。例如ga:visitors, 3000。我需要将每个指标的KeyValuePair组织到可以返回到视图的字典中。

例如,首先我写回到3个度量控制台应用程序:

  • ga:visitors
  • ga:newVisits
  • ga:percentNewVisits

注:各该度量是一个单独的字典与KeyValuePair。例如:[ga:visitors, 3000]

当显示在控制台中的数据,代码如下:

Console.WriteLine("VisitorStatistics" + " " + 
       d.Query.StartDate + " " + "-" + " " + d.Query.EndDate + "\r\n" + 
       "------------------------------------------" + "\r\n" + 
      "Visitors:" + " " + d.TotalsForAllResults["ga:visitors"] + "\r\n" + 
      "New Visitors:" + " " + d.TotalsForAllResults["ga:newVisits"] + "\r\n" + 
      "Percent New Visitors:" + " " + d.TotalsForAllResults["ga:percentNewVisits"] +"%"); 

我需要在我的MVC 4 /asp.net应用程序来显示这个数据,但我不确定如何做到这一点。所有代码都设在这里我的控制器:

public void GAnalyticsService() 
     { 
     var serviceAccountEmail = "xxxxx.gserviceaccount.com"; 
     var certificate = new x509Certificate2(@"C:\Users\User\Desktop\MyApp\Presentation\Nop.Web\key.p12", "notasecret", X509KeyStorageFlags.Exportable); 

     var credential = new ServiceAccountCredential(
     new ServiceAccountCredential.Initializer(serviceAccountEmail) { 
      Scopes = new[] { AnalyticsService.Scope.Analytics } 
      }.FromCertificate(certificate)); 

     // Create the service. 
     //NopCommerce 
     var GoogleAnalyticsService = new AnalyticsService(new BaseClientService.Initializer() { 
       HttpClientInitializer = credential, 
       ApplicationName = "MyApp", 
      }); 

     var request = GoogleAnalyticsService.Data.Ga.Get("ProfileID", "2010-02-24", "2014-02-24", "ga:visitors,ga:newVisits,ga:percentNewVisits"); 

     //Specify some addition query parameters 
     request.Dimensions = "ga:visitCount"; 
     request.Sort = "-ga:visitors"; 
     request.MaxResults = 10000; 
     //Execute and fetch the results of our query 
     Google.Apis.Analytics.v3.Data.GaData d = request.Execute(); 
     } 

public ActionResult GAStatistics() { 
    //GAnalyticsService(); 
    return View(new GAStatisticsListModel()); 
    } 





    } 

这里就是我从谷歌Analytics(分析)API recieving数据:

3个指标的总成绩(每一个有KeyValuePair字典) enter image description here

KeyValuePair: enter image description here

我只需要组织这些数据并将它显示在视图中,只需简单的数据(文本)就可以了。我该怎么做呢?

任何建议将是很大的帮助。

+1

这可能有助于https://developers.google.com/analytics/solutions/articles/gdataAnalyticsCharts – DaImTo

+0

谢谢信息确实很有价值,但所有这些信息可能不会简单地应用于.NET/C#中? – koffe14

+0

谷歌图表isnt .net – DaImTo

回答

0

只是为了显示数据而做了临时修复。它的目的是为了时间。

将GAnalyticsService从void更改为字符串方法。

返回此:

return "Besöksstatistik" + " " + 
        d.Query.StartDate + " " + "-" + " " + d.Query.EndDate + "<br/>" + 
        "------------------------------------------" + "<br/>" + 
       "Antal besökare:" + " " + d.TotalsForAllResults["ga:visitors"] + "<br/>" + 
       "Antal nya besökare:" + " " + d.TotalsForAllResults["ga:newVisits"] + "<br/>" + 
       "Procent nya besökare:" + " " + d.TotalsForAllResults["ga:percentNewVisits"] + "%".ToString(); 

得到了在视图下面的输出:

Besöksstatistik 2010-02-24 - 2014-02-24 
------------------------------------------ 
Antal besökare: 343272 
Antal nya besökare: 147693 
Procent nya besökare: 42.54700702044485% 
相关问题