Рейтинг:
1
Bryian Tan
Основываясь на том, что вы предоставили, предполагая, что все остальное работает, этого кода должно быть достаточно, чтобы получить имя пользователя через запятую
ResultTextBlock.Text = string.Join(",", myGetRequest.users.Select(p => p.username));
Member 13041902
Извините это данные JSON с которыми я работаю а не CSV
Bryian Tan
Как насчёт
var result = myGetRequest.users.Select(p => p.username).ToList()
System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
string jsonResult = serializer.Serialize(result);
ResultTextBlock.Text = jsonResult;
Member 13041902
Ладно, попробую, когда представится возможность. Кроме того, я забыл тег UWP на этом посту просто потому, что там больше не было путаницы.
Member 13041902
Я предполагаю, что это будет вместо результата var, который у меня уже есть? Так Могу ли я спросить, зачем вам его сериализовывать? Разве он не должен быть десериализован из JSON, чтобы отобразить его в текстовом формате?
Bryian Tan
Не знаю, что ты пытаешься сделать. Вы не предоставили достаточно информации. Я предположил, что ваш следующий вопрос был о том, как читать массив JSON на стороне клиента? См. здесь пример Массив Loop JSON[^]
Member 13041902
Да потому, что я хочу сделать, это прочитать данные JSON с URL-адреса и затем десериализовать его и поместить его в текстовое поле, но я только хочу, чтобы отобразить имя пользователя, часть данных, потому что данные JSON и возвращает пароли которые могли бы привести проблемам безопасности, так что я просто хочу, чтобы имя пользователя будет отображаться в TextBox в C#
Bryian Tan
вы пробовали код? Я не понимаю, почему он вернет пароль.
Member 13041902
Он передал обратно все данные JSON из URL-адреса, который содержит пароль
Bryian Tan
Вы хотите снова опубликовать свой код? Я не вижу, как код должен возвращать столбец пароля, в то время как он кодируется для получения только столбца имени пользователя
Member 13041902
Итак, мой UserObject. cs:
пространство имен HttpDemo
{
UsersObject открытый класс { общественная список<userobject> пользователи = новый список<userobject&ГТ;(); }
публичный класс UserObject
{
общественного строка имя { получить; набор; }
//public string password { get; set; }
//public int Id { get; set; }
//public object userscol { get; set; }
//public string __href { get; set; }
}
}
и моя главная страница.xaml. cs:
пространство имен HttpDemo
{
/// & lt;резюме>
/// Пустая страница, которая может использоваться сама по себе или перемещаться внутри фрейма.
///
public sealed partial class MainPage: страница
{
публичная Главная страница()
{
этот.метод InitializeComponent();
}
private async void Button_Click(отправитель объекта, RoutedEventArgs e)
{
UsersObject myGetRequest = новый UsersObject();
myGetRequest. users = await GetRequest();
//чтобы перебрать всех пользователей, которые у вас есть, сделайте это:
по каждому элементу (ВАР продукт в myGetRequest.пользователи)
{
//сделать нечто
}
ResultTextBlock.Текст = myGetRequest.пользователей.Метод toString();
}
// public async void POSTreq()
//{
// Uri requestUri = новый Uri("http://13.65.27.59/db/GroupDBTest/users.json"); / / замените свой Url-адрес
// dynamic dynamicJson = новый ExpandoObject();
// dynamicJson. username = "имя".Метод toString();
// dynamicJson. password = " 200";
// строки JSON = "";
// json = Newtonsoft. Json.JsonConvert. SerializeObject(dynamicJson);
// var objClint = new System. Net. Http.HttpClient();
// System.Net.Http.HttpResponseMessage respon = await objClint.PostAsync(requestUri, новый StringContent(JSON,в системе.Текст.Кодирование.UTF8, " application/json"));
// строки responJsonText = ждут ответственности.Содержание.ReadAsStringAsync();
//}
задача публичных статических асинхронных&ЛТ;список<userobject&ГТ;&ГТ; GetRequest()
{
Uri geturi = новый Uri("http://13.65.27.59/db/GroupDBTest/users.json"); / / замените свой url-адрес
Системы.Нет.Протоколу HTTP.Клиент с помощью HttpClient = новая система.Нет.Протоколу HTTP.С помощью HttpClient();
System.Net.Http.HttpResponseMessage responseGet = ожидание клиента.GetAsync(geturi);
строка ответ = ждут responseGet.Содержание.ReadAsStringAsync();
// обратный ответ;
var json = ожидание ответа.Содержание.ReadAsStringAsync();
var result = JsonConvert.DeserializeObject< List & lt;userobject>> (json);
возвращаемый результат;
}
}
}
Но когда я пробую ваш код, некоторые вещи недоступны в UWP, например Web in the line: System. Web. Script.Сериализация.Класс javascriptserializer сериализатор = новый система.Веб.Сценарий.Сериализация.Класс javascriptserializer();
Я вообще не уверен, как ваш код вписывается в мой
Bryian Tan
Попробовать это.
//UserObject.cs
public class UsersObject
{
public string username { get; set; }
}
// * * * * * * Mainpage. xaml. cs: *******
public MainWindow()
{
InitializeComponent();
}
public static async Task<List<UsersObject>> GetRequest()
{
Uri geturi = new Uri("http://13.65.27.59/db/GroupDBTest/users.json"); //replace your url
System.Net.Http.HttpClient client = new System.Net.Http.HttpClient();
System.Net.Http.HttpResponseMessage responseGet = await client.GetAsync(geturi);
string response = await responseGet.Content.ReadAsStringAsync();
//return response;
var json = await responseGet.Content.ReadAsStringAsync();
var result = JsonConvert.DeserializeObject<List<UsersObject>>(json);
return result;
}
private async void Button_Click(object sender, RoutedEventArgs e)
{
// UsersObject myGetRequest = new UsersObject();
var x = await GetRequest();
// myGetRequest.users = await GetRequest();
}
}