URL重定向C#基于变量

时间:2017-06-06 15:03:40

标签: c# url-routing

我不能使用C#所以请原谅我的无知。

目前有这个:

/////布局/////

 @Html.ActionLink("Help", "Help", new { controller = "Help", topic = ViewBag.Topic }, new { target = "_blank" })

 ////控制器帮助/////

 @if (Request.QueryString.GetValues(0)[0] == "Dash")
 { 
     //HTML code 
 }
 @if (Request.QueryString.GetValues(0)[0] == "Manage")
 {
     //HTML code2
 }

根据我的理解,@Html.ActionLink正在将查询提取到"帮助"控制器,从而根据主题呈现HTML代码(内部链接)和页面。

是否有一种简单的方法可以将其转换为外部URL。因此,@ if =" dash"然后url =" www.foo.com"而不是HTML代码。

如果不可能,还有其他最佳选择吗?关键方面是每个页面主题需要创建指向不同页面的URL链接。

1 个答案:

答案 0 :(得分:0)

如果你有很多主题,我发现当前的方法更清晰,更容易保留,也许你可以将@if ... @ if更改为if / else-if并将查询字符串的第一个参数存储到变量

@{ 
    String topic ;

    topic = Request.QueryString.GetValues(0)[0] ;

    if (topic.Equals("Dash"))
    { 
        //HTML code 
    }
    else if (topic.Equals("Manage"))
    {
        //HTML code2
    }
}