2014-09-12 2 views
1
 private async void get() 
     { 
      string URL ="http://8tracks.com/mix_sets/all.json?include=mixes?api_key=05570e44383665661d8edeeb5d4f07d415e14b4a"; 
      HttpClient c = new HttpClient(); 
      String response = await c.GetStringAsync(URL); 
      textbook.Text = response; 

привет даже один ... Я пытался извлечь данные с веб-сервера, используя код выше, и мне не удалось заставить его работать. Я новичок в этом, и я пробовал другие подобные шаблоны, но он тоже не работает. может кто-нибудь написать код, который будет работать, показывая мне, как это делается? bob tabor использовал этот шаблон, который я поставил выше для его вокруг меня, и он работаетHttp-клиент не может получить данные json с веб-сервера

+1

Ваш URL отсутствует закрывающая и точка с запятой, в том, что ошибка копипаст? – Adam

+0

ваш код подходит для получения данных с сервера. просто сделайте свой код компилируемым. Можете ли вы рассказать нам, какую ошибку/проблему вы столкнулись? – loop

+0

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

ответ

0

Как вы думаете, я шучу с вами :) Проверьте ниже, чтобы доказать, что у меня не было Photoshoped :) . enter image description here

For ThugSoldier: - Привет, у меня есть ваш zip-файл. Вы знаете, что я получил от вашего кода, вы действительно ничего не знаете о мобильной разработке. Поэтому мое предложение для вас - прежде чем пытаться что-либо сделать самостоятельно, сначала быстро перейдите по ресурсам/теме, вы получите приблизительное представление о том, что вы читаете. Не принимайте это неправильно, я просто хотел вам помочь. И я тоже столкнулся со всем этим.

Если поставить весь код до этого вы анс только один комментарий прочь :)

Ваш код, который я получил от вас по почте почтовый файл.

// Xaml Код

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 
    <StackPanel RenderTransformOrigin="0.5,0.5" Margin="-191,-181,191,181"> 
     <StackPanel.RenderTransform> 
      <CompositeTransform TranslateX="300" TranslateY="200"/> 
     </StackPanel.RenderTransform> 
     <TextBlock Name="xt" FontSize="25" Text=""/> 
    </StackPanel> 
</Grid> 

// MainPage .cs код.

public sealed partial class MainPage : Page 
{ 
    public MainPage() 
    { 
     this.InitializeComponent(); 
    } 

    private async void web() 
    { 
     String url = "http://8tracks.com/mix_sets/all.json?include=mixesapi_key=05570e44383665661d8edeeb5d4f07d415e14b4a"; 
     HttpClient client = new HttpClient(); 
     string result = await client.GetStringAsync(url); 
     xt.Text = result; 
    } 
} 

Проблема: -

In the above Code actually you have not called the web() Method from anywhere - means you have to invoke web() method. By using Some Button Click Event.

РЕШЕНИЕ: -

Я сделал кнопку в Xaml и добавил ClickEvent к нему. который доступен в базовом классе MainPage .cs. И что произойдет дальше, когда вы нажмете на кнопку, ваше событие будет вызвано и, следовательно, ваш метод web(). Это даст ваши данные.

Полный код: -

Xaml: -

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 
    <StackPanel RenderTransformOrigin="0.5,0.5" Margin="-191,-181,191,181"> 
     <StackPanel.RenderTransform> 
      <CompositeTransform TranslateX="300" TranslateY="200"/> 
     </StackPanel.RenderTransform> 
     <TextBlock Name="xt" FontSize="25" Text=""/> 

     <Button Content="ClickMe" Click="ButtonBase_OnClick"></Button> 

    </StackPanel> 
</Grid> 

MainPage.cs Код: -

public sealed partial class MainPage : Page 
{ 
    public MainPage() 
    { 
     this.InitializeComponent(); 
    } 

    private async void web() 
    { 
     String url = "http://8tracks.com/mix_sets/all.json?include=mixesapi_key=05570e44383665661d8edeeb5d4f07d415e14b4a"; 
     HttpClient client = new HttpClient(); 
     string result = await client.GetStringAsync(url); 
     xt.Text = result; 
    } 

    private void ButtonBase_OnClick(object sender, RoutedEventArgs e) 
    { 
     web(); 
    } 
} 

Теперь вы на сделано: - запустить приложение = > нажмите кнопку => получить результат в TextBox.

Предложение: - Загрузите несколько базовых образцов приложений для Windows-приложений, которые запускают их локально. см. код.

Просто свяжитесь со мной на моем для будущих помощи/инструктивных :) Приветствия: D

+0

Так почему же это не работает для меня? Спасибо за подтверждение, что это работает ... что-то не так где-то –

+0

@thugsodier Первая проверка - это интернет, работающий на вашем эмуляторе/устройстве. и также поместите этот getstringasync (url) в try catch. также поместите весь свой код в свой вопрос. Я проверю это. – loop

+0

Интернет работает ... это имеет какое-либо отношение к разрешению приложения? –

Смежные вопросы