2011-11-29 2 views
0

Я использую asp.net с C# в обратном коде. На моей первой странице у меня есть гиперссылка с NavigateUrl ="Order.aspx?productId = " + ProductID. Я хочу передать ProductID в файл Order.aspx. Итак, как получить его в файле цели: Order.aspx.Значок пропуска между веб-страницей asp.net

Я использовал Lable для отображения в Order.aspx файл

string productId = Request.QueryString["productId"];

lblTest.Test = productId

Но lblTest не показывать ничего

Спасибо.

+0

Пожалуйста, перефразировать ваш вопрос –

ответ

1
String value = Request.QueryString["productId"]; 

Его желательно, чтобы вы проверить, действительно ли присутствует Request.QueryString [ "ProductID"].

4

Вы должны были бы прочитать значения QueryString объекта Request.

string productId = Request.QueryString["productId"]; 

Вам нужно разобрать его на целое число, если это то, что оно есть.

NavigateUrl ="Order.aspx?productId = " + ProductID 

Вы также можете избавиться от пробелов в своем URL-адресе.

+0

я пытался. Я использую 'lblTest.Text = productID', однако' lblText' не отображается ... – Mimosa

+0

Как я уже сказал, измените свой URL. Пробелы в 'proudctId =' могут вызвать проблемы. Отлаживайте страницу и смотрите, что возвращает 'Request.QueryString [" productId "]'. – Brandon

0

Используйте коллекцию запрос

string productId = Request["productId"]; 

Будьте осторожны, что вы делаете с этой переменной. Например. не хранить его непосредственно в базе данных или добавлять его к встроенному запросу.

+0

Я думаю, что это будет работать только на почте. –

+0

Неверный. См. Здесь: http://www.hanselman.com/blog/ASPNETParamsCollectionVsQueryStringFormsVsRequestindexAndDoubleDecoding.aspx –

+0

Но это тоже не отображение – Mimosa

0

Если ProductID является переменной на стороне сервера, используйте: NavigateUrl = "Order.apx ProductID =" <% = ProductID%>

0

Ваш код:

="Order.aspx?productId = " + ProductID; 

Удалить пространство Мой код:

="Order.aspx?productId=" + ProductID; 
Смежные вопросы