更优雅的方式在mvc中路由gclid google参数?

时间:2013-03-05 18:19:08

标签: asp.net-mvc asp.net-mvc-routing

对于谷歌分析,并在关键字策略上正确匹配网络搜索参数,我想确保在控制器中发生重定向时,谷歌提供的gclid参数会被传递。

重定向的原因是进行拆分测试,对着陆页进行A / B测试,以及更好地匹配广告系列主题的虚荣网址。

目前 - 这就是我“破解”它的方式:

    public class ArtclassController : Controller
    {
    //
    // GET: /Artclass/
    public ActionResult Kid(string gclid)
    {
        string _glcid = gclid;
        return RedirectToAction("Index", "ArtClassesForKids", new {glcid= _glcid  });
    }

我的问题是 - 有没有办法更优雅地做到这一点?例如,在MVC路由?

(为了简洁起见,在提供的代码示例中,我省略了第二个重定向,并使用随机函数来选择不同的着陆页。)

1 个答案:

答案 0 :(得分:0)

我不相信有办法,尽管你可以使用Session甚至TempData来完成任务。

在您的代码中确定gclid的任何地方现在使用:

Session["gclid"] = gclid;

需要gclid的地方使用:

gclid = Session["gclid"];