Посетите URL с переменной, изменяющей URL, Windows Phone - PullRequest
0 голосов
/ 24 марта 2012

У меня есть URL, который показан ниже: URL удален по причинам контракта

            WebClient webClient = new WebClient();
            Uri uri = new Uri("http://www.URLhere.aspx?stopid=4556");
            webClient.OpenReadCompleted += new OpenReadCompletedEventHandler
            (webClient_OpenReadCompleted);
            webClient.OpenReadAsync(uri);

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

Я думал, ты мог бы сделать это:

            WebClient webClient = new WebClient();
            Uri uri = new Uri("http://www.URLhere.aspx?stopid=" + stopId);
            webClient.OpenReadCompleted += new OpenReadCompletedEventHandler
            (webClient_OpenReadCompleted);
            webClient.OpenReadAsync(uri);

Как это сделать?

Edit: Когда я делаю приведенный выше код, он возвращается как нулевая ссылка, поэтому я предполагаю, что он не получает текст в текстовом поле.

Ответы [ 3 ]

1 голос
/ 24 марта 2012

Похоже, вам не хватает кодировки вашей переменной.

var myvar = "the simpsons";
Uri myUri = new Uri("http://www.URLhere.aspx?stopid=" + HttpUtility.UrlEncode(myvar));

См. Метод HttpUtility.UrlEncode - MSDN

0 голосов
/ 25 марта 2012

Генри, если я правильно понимаю ваш вопрос, я думаю, вы хотите добавить значение в TextBox (не TextBlock) в URI.Если это правильно и вы используете MVVM, вы можете привязать свой TextBox к общедоступному свойству в ViewModel (назовем его TextBoxProp)

private string _textBoxProp;
public string TextBoxProp
{
   get{return _textBoxProp;}
set
{
   _textBoxProp = value;
   RaisePropertyChanged("TextBoxProp");
}
}

, а затем создать свой URI следующим образом:

Uri uri = new Uri(String.Format("http://www.URLhere.aspx?stopid={0}", TextBoxProp));

Убедитесь, что при привязке к свойству в XAML установлен режим TwoWay.Я надеюсь, что это помогает

0 голосов
/ 24 марта 2012

нет никакой разницы между

Uri uri = new Uri("http://www.URLhere.aspx?stopid=4556");

и

Uri uri = new Uri("http://www.URLhere.aspx?stopid=" + stopId);

, поэтому я действительно не знаю, в чем ваша проблема

...