Inilah yang akhirnya saya lakukan (saya tidak suka gagasan menanamkan. Net kode di dalam javascript):
- Saya menyiapkan dua akun Google Analytics, satu untuk pengembangan / pengujian dan satu untuk produksi
- Buat halaman yang mengembalikan id akun Google Analytics (dari web.config) sebagai badannya.
- Pada $ (dokumen). Sudah, buat panggilan ajax ke halaman
- Pada Ajax selesai, panggil skrip google analytics dengan respons (yang berisi id akun)
Jadi tergantung pada lingkungan yang saya gunakan, saya menggunakan salah satu versi file web.config yang berisi id akun yang benar.
Ini sedikit lebih rumit, tetapi tidak melibatkan pembuatan javascript dari .NET, dan ini sangat sederhana dengan jQuery.
Ini kode terakhir:
var setupGoogleAnalytics = function (clientNumber) {
var gaq = gaq || [];
gaq.push(['_setAccount', clientNumber]);
gaq.push(['_setDomainName', 'none']);
gaq.push(['_trackPageview']);
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
}
$(document).ready(function(){
$.ajax({
url: "GetGAClientNumber.aspx",
success: function(data) {
setupGoogleAnalytics(data);
}
});
});
Dan itu bekerja dengan sempurna!