我在 url 中有一个“showall”查询字符串参数,当单击“显示全部/显示页面”按钮时,该参数被动态添加。
我希望能够根据用户单击“显示全部/显示页面”按钮来切换“显示全部”查询字符串参数值。
我正在做一些嵌套的“if”,string.Replace()
在 url 上,有没有更好的方法?
所有操作都在服务器上完成。
ps Toran,很好的建议,但是由于其他一些问题,我必须使用 URL PARAMETER。
我在 url 中有一个“showall”查询字符串参数,当单击“显示全部/显示页面”按钮时,该参数被动态添加。
我希望能够根据用户单击“显示全部/显示页面”按钮来切换“显示全部”查询字符串参数值。
我正在做一些嵌套的“if”,string.Replace()
在 url 上,有没有更好的方法?
所有操作都在服务器上完成。
ps Toran,很好的建议,但是由于其他一些问题,我必须使用 URL PARAMETER。
只是为了详细说明托兰的回答:
采用:
<asp:HiddenField ID="ShowAll" Value="False" runat="server" />
要切换您的状态:
protected void ToggleState(object sender, EventArgs e)
{
//parse string as boolean, invert, and convert back to string
ShowAll.Value = (!Boolean.Parse(ShowAll.Value)).ToString();
}
另一个肮脏的选择可能只是使用隐藏的输入并将其设置为开/关,而不是操纵 url。
将值硬编码到 URL 中(我知道这不太好)使用默认值或 true 会不会太费力了
booleanVar = !booleanVar;
在每个页面加载时运行?
至少这将不再需要嵌套 ifs 来操作 URL。
我不确定基于这个问题,但这不是HTTPHandlers来救援的地方吗?在这种情况下,您不应该在页面渲染之前处理对象上的变量更改吗?