Đây là lần đầu tiên tôi sử dụng json.net và tôi không thể tìm ra. Đây là mã của tôi dưới đây.Không thể deserialize json bằng cách sử dụng json.net
// Constructor
public MainPage()
{
InitializeComponent();
}
private void btnRefreshTweets_Click(object sender, RoutedEventArgs e)
{
string ServerURL = @"http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer/1/query?text=e&geometry=&geometryType=esriGeometryPoint&inSR=&spatialRel=esriSpatialRelIntersects&relationParam=&objectIds=&where=&time=&returnCountOnly=false&returnIdsOnly=false&returnGeometry=false&maxAllowableOffset=&outSR=&outFields=&f=json";
WebClient webClient = new WebClient();
webClient.DownloadStringCompleted += new DownloadStringCompletedEventHandler(webClient_DownloadStringCompleted);
webClient.DownloadStringAsync(new Uri(ServerURL));
}
void webClient_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
if (e.Error != null)
{
return;
}
List<Attributes> tweets = JsonConvert.DeserializeObject<List<Attributes>>(e.Result);
this.lbTweets.ItemsSource = tweets;
}
public class Attributes
{
public string STATE_NAME { get; set; }
}
Tôi không thể deserialize các thuộc tính STATE_NAME. Tôi đang thiếu gì?
tôi tiếp tục nhận được lỗi này
"Không thể deserialize đối tượng JSON vào loại 'System.Collections.Generic.List`1 [WPJsonSample.MainPage + Thuộc tính]'. Line 1, vị trí 20."
Các JSON không chỉ là một danh sách, nó có những thứ khác nữa, như "displayFieldName", "fieldAliases", "cánh đồng và 'tính năng' (của bạn Tôi không chắc chắn nếu điều đó làm cho một sự khác biệt cho json.net, nhưng hãy thử làm cho một đối tượng để chứa tất cả trong số họ có thể? – blitzen
Tôi sẽ kiểm tra bài đăng này trước khi tiếp tục với json.net.Đây là chết đơn giản: http: //www.drowningintechnicaldebt.com/ShawnWeisfeld/archive/2010/08/22/using-c-4.0-and-dynamic-to-parse-json.aspx –