c# - una - Mostrar datos de Google Analytics en la vista
script google analytics (1)
Hice una corrección temporal solo para mostrar los datos. Sirve su propósito para el tiempo.
Cambió GAnalyticsService de un vacío a un método de cadena.
Devuelto esto:
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();
Obtuve el siguiente resultado en la vista:
Besöksstatistik 2010-02-24 - 2014-02-24
------------------------------------------
Antal besökare: 343272
Antal nya besökare: 147693
Procent nya besökare: 42.54700702044485%
Estoy trabajando en un cliente de Google Analytics para una aplicación MVC que recopila datos de la API de Analytics y estoy tratando de mostrar los datos en una vista. El objetivo final es mostrar los datos de Google Analytics con Google Charts.
Sin embargo, no estoy seguro de cómo estructurar correctamente los datos. Cada métrica es un diccionario con un KeyValuePair
donde el nombre de la métrica es la clave y el valor es el valor real. Por ejemplo ga:visitors, 3000
. Necesito organizar cada KeyValuePair
con su KeyValuePair
en un diccionario que pueda devolver a la vista.
Por ejemplo, primero escribí una aplicación de consola que arrojó 3 métricas:
-
ga:visitors
-
ga:newVisits
-
ga:percentNewVisits
Nota: cada una de estas métricas es un diccionario separado con KeyValuePair
. Ej: [ ga:visitors, 3000
]
Al mostrar los datos en la consola, el código se ve así:
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"] +"%");
Necesito mostrar estos datos en mi aplicación MVC 4 /asp.net pero no estoy seguro de cómo lograr esto. Todo el código se encuentra aquí en mi controlador:
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());
}
}
Aquí están los datos que recibo de la API de Google Analytics:
Resultados totales con 3 métricas (cada uno es un diccionario con KeyValuePair)
El KeyValuePair:
Solo necesito organizar estos datos y mostrarlos en la vista, simplemente los datos (texto) están bien. ¿Cómo hago esto?
Cualquier sugerencia sería de gran ayuda.