У меня есть приведенный ниже код (детали удалены для удобства чтения)
<asp:Repeater ID="rptMenu" runat="server" OnItemDataBound="rptMenu_ItemDataBound">
<ItemTemplate>
<li>
<asp:HyperLink ID="hlCountries" runat="server" class="lang__option">
<asp:Image ID="imgGut" runat="server" />
<asp:Label ID="lblName" runat="server" Text=""></asp:Label>
</asp:HyperLink>
</li>
</ItemTemplate>
</asp:Repeater>
В моем предмете привязаны данные (опять же некоторый код удален для удобства чтения, но может отображаться при необходимости)
protected void rptMenu_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
//var nvc = HttpUtility.ParseQueryString(Request.Url.Query);
//nvc.Remove("c");
//string url = Request.Url.AbsolutePath + "?" + nvc.ToString();
hlCountries.NavigateUrl = string.Format("{0}/?c={1}",
System.Web.HttpContext.Current.Request.Url.AbsoluteUri, p.Id);
}
}
Загрузка страницы. Я связываю данные.
При выборе гиперссылки меню добавляет к URL-адресу параметр загрузки некоторых данных на основе значения запроса, переданного в.
Когда следующий При нажатии на пункт в пункте меню добавляется еще один параметр, например
Page load: getdata
Click first item getdata?c=1
Click second item getdata?c=1c=2
(обратите внимание, как повторяется c =) Как можно избежать этого? Я добавил закомментированный выше код, но это не сработало?