2
我使用Html.ActionLink()創建鏈接。我根據從URL獲取的查詢字符串的條件向url添加參數字符串。Html.ActionLink中的Concat字符串()
<%
strA = Request.QueryString["AA"];
strB = Request.QueryString["BB"];
strC = Request.QueryString["CC"];
if (!string.IsNullOrEmpty(strA))
{
%>
<%: Html.ActionLink(a.Name, Model.ActionName, Model.ControllerName,
new {aa = strA , tab = 2}, null)%>
<%
}else if(!string.IsNullOrEmpty(strB)){
%>
<%: Html.ActionLink(a.Name, Model.ActionName, Model.ControllerName,
new {bb = strB , tab = 2}, null)%>
<%
}else if(!string.IsNullOrEmpty(strA) && !string.IsNullOrEmpty(strB)){
%>
<%: Html.ActionLink(a.Name, Model.ActionName, Model.ControllerName,
new {aa = strA , bb = strB, tab = 2}, null)%>
<%else{ %>
<%: Html.ActionLink(a.Name, Model.ActionName, Model.ControllerName,
new {tab = 2}, null)%>
<% }%>
這就是我試圖做的:
<%
string url_add = "";
if (!string.IsNullOrEmpty(strA))
{
url_add += "aa=strA";
}else if(!string.IsNullOrEmpty(strB)){
url_add += "bb=strB";
}else if(!string.IsNullOrEmpty(strA) && !string.IsNullOrEmpty(strB)){
url_add += "aa=strA&bb=strB";
}else{
url_add += "tab=2";
}
%>
後,我Concat的字符串準備好了,我把下面那個字符串:
<%: Html.ActionLink("My link", "my_action", "my_controller", new {url_add} , null) %>
,但是當我這樣做,我的網址將爲"blahblah.com/url_add=aa=strA"
。
任何人都可以告訴我更好的解決方案。
非常感謝。
感謝吉姆。無論如何,我必須將這塊代碼放入Global.asax.cs或其中? – titi 2012-02-09 10:03:27
titi - 這個小塊可以被添加到現有的代碼,你定義的strA變量等 – 2012-02-09 10:19:28
吉姆,我試圖添加鏈接'<%:Html.ActionLink(「我的鏈接」,「my_action」,「my_controller」,新{newRoutes},null)%>',但url是'blahblah.com/My_controller/My_action?newRoutes = System.Web.Routing.RouteValueDictionary'。 – titi 2012-02-10 02:01:45