Tôi hoàn thành mới với C# và tôi đã cho bản thân mình một nhức đầu. Tôi biết điều này có thể là trẻ em công cụ cho bạn, nhưng tôi đã dành một giờ + googleing xung quanh và dường như không thể làm việc nó ra.làm thế nào để chuyển đổi mảng với các khóa/giá trị thành JSON C#
Tất cả những gì tôi đang cố làm là chuyển đổi mảng thành JSON. Tôi biết PHP tốt, vì vậy đây là một ví dụ về những gì tôi đang cố gắng để làm gì (trong PHP):
$myarr=array("key1"=>"value for key 1","key2"=>"value for key 2");
$jsonArray=json_encode($myarr);
nên $jsonArray
sẽ là: {"key1":"value for key 1","key2":"value for key 2"}
Bây giờ, tôi đang cố gắng để làm chính xác điều đó, nhưng trong C#.
Đây là những gì tôi có cho đến nay:
String[] keys = new String[] { "emailSend","toEmail"};
String[] values = new String[] {textBox2.Text,textBox1.Text};
JavaScriptSerializer js = new JavaScriptSerializer();
string json = js.Serialize(keys);//final json result
MessageBox.Show(json);//show me
Tôi đang sử dụng Visual Studio C# 2010, mà là ném lỗi này (với mã ở trên):
The type or namespace name 'JavaScriptSerializer' could not be found (are you missing a using directive or an assembly reference?)
Bất kỳ ý tưởng về những gì tôi đang làm sai ở đây? Cảm ơn
Đây là trong System.Web.Extensions.dll trong trường hợp bạn không có nó nạp như một tài liệu tham khảo (ví dụ, một winforms hoặc WPF dự án sẽ không có nó theo mặc định). Bạn có thể chọn sử dụng một cái gì đó như [fastJSON] (http://www.codeproject.com/Articles/159450/fastJSON). Sắp xếp các đối tượng thậm chí còn dễ dàng hơn và nhanh hơn sử dụng JavaScriptSerializer. – erodewald
Bây giờ tôi nhận được lỗi: 'Loại hoặc tên không gian tên 'Kịch bản' không tồn tại trong không gian tên 'System.Web' (bạn đang thiếu một tham chiếu lắp ráp?)' Cảm ơn xD –
@nav_nav Hmm, lạ. Bạn đang sử dụng trước .NET 3.5? – mattytommo