Tag: json

将json动态反序列化为传入的任何对象.c#

我正在尝试将json反序列化为c#中的对象。 我希望能够做的是传递任何对象获取它的类型,并使用JSON.Net库将json反序列化为该特定对象。 以下是代码行。 Object someObject1 = someObject; string result = await content.ReadAsStringAsync(); return JsonConvert.DeserializeObject(result); 最后一行抛出exception operator ‘<' cannot be applied to operands of type 'method group' 如何在没有c#抱怨的情况下获取中的数据类型。 我该怎么做才能使这段代码有效? 我错过了什么知识?

如何将JSON结果放在谷歌地图上?

我有我的JSON结果,如下所示,我已经退出了我的数据库,我希望在谷歌地图上显示这个,使用一个标记,根据这里的位置显示结果; { “user”: [{ “name” : “xxxxxxxxx”, “posn” : [53.491314, -2.249451] }, { “name” : “xxxxxxxxxx”, “posn” : [54.949231, -1.620483] }] } 如何获取谷歌地图上的用户名和位置? 为我的googlemaps编码; var map; var bounds = new google.maps.LatLngBounds(); var mgr; function initialize() { var myOptions = { zoom: 4, center: new google.maps.LatLng(-34.397, 150.644), mapTypeId: google.maps.MapTypeId.ROADMAP }; map = new google.maps.Map(document.getElementById(“map_canvas”), myOptions); mgr […]

在自定义AuthorizeAttribute中获取Post请求参数

我用它来从输入流中获取请求参数。 POST在请求正文中使用JSON。 在我的onAuthorize函数中,它onAuthorize了AuthorizeAttribute 。 它确实给了我请求体参数,但它清空了流,因此控制器不接收任何请求参数: public override void OnAuthorization(AuthorizationContext filterContext) { filterContext.HttpContext.Request.InputStream.Length() //17 here string jsonPostData; using (var stream = filterContext.HttpContext.Request.InputStream) { stream.Position = 0; using (var reader = new System.IO.StreamReader(stream)) { jsonPostData = reader.ReadToEnd(); } } filterContext.HttpContext.InputStream.Length() //0 here filterContext.HttpContext.Request.InputStream.Position = 0; // still 0 base.OnAuthorization(filterContext); //so when the request reaches controller its empty […]

使用动态变量解析JSON块

我从URL抓取JSON对象并使用JSON.NET解析它。 我能够用定义的变量解析数据块就好了,但是当涉及var:value的随机收集时 – 我被卡住了。 示例(松散类型): {“FNAME”:”joe”,”LNAME”:”doe”, “BodyType”:{“height”:180,”weight”:”200″,”race”:”white”,”hair”:”black”}, “BELONGINGS”:{“shirt”:”black”,”Money”:15,”randomThing”:”anyvar”}, “Signs”:{“tattoo”:0,”scar”:”forehead”,”glasses”:”dorky”} } 我正在投这个 Class Person { public string FNAME; public string LNAME; public BodyType bodyType; public ????? belongings; public ????? signs; } 如果我无法预测其属性,我该如何处理物品和标志?

将json的动态属性读入.net C#

我在点击API后得到了json格式: { “7407”: { “survey_id”: “406”, “device_id”: “1”, “response_time”: “2013-10-10 16:14:01”, “timezone”: “0”, “language_id”: “en”, “response_id”: “7407”, “device_alias”: “QR Code App”, “site_name”: “QR Code App”, “country_name”: “United States”, “state_name”: “New York”, “city_name”: “Suffern”, “zip”: “”, “voucher_name”: null, “voucher_mode”: null, “surveyee_name”: null, “surveyee_email”: null, “surveyee_phone”: null, “ques”: { “”: [] } }, “7408”: { “survey_id”: “406”, […]

c#序列化JSON日期为ruby

我有一个C#应用程序,它将其DTO序列化为JSON,并将它们发送给由Ruby处理的线路。 现在序列化日期的格式如下: /Date(1250170550493+0100)/ 当这击中Ruby应用程序时,我需要将此字符串表示forms转换回日期/日期时间/时间(无论它在Ruby中)。 有什么想法我会怎么做? 干杯,克里斯。

Dotnet webclient超时但浏览器为json webservice工作文件

我试图使用以下代码将以下json webservice https://mtgox.com/code/data/getDepth.php的结果转换为字符串。 using (WebClient client = new WebClient()) { string data = client.DownloadString(“https://mtgox.com/code/data/getDepth.php”); } 但它总是返回超时exception而没有数据。 我计划使用fastjson将响应转换为对象,并期望这是一个困难的部分而不是返回页面的内容。 HttpWebRequest request = (HttpWebRequest)WebRequest.Create(“https://mtgox.com/code/data/getDepth.php”); using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) { using (StreamReader sr = new StreamReader(response.GetResponseStream())) { string data = sr.ReadToEnd(); } } 也导致了同样的错误。 谁能指出我做错了什么?

Web方法无法删除对象{d:“”}

我想要做的不是发送Object { d : “{“FileID”:”1213″}” }发送”{“FileID”:”1213″}” 我目前的代码: using System; using System.Web.Mvc; using System.Data; using System.Data.SqlClient; using System.Configuration; using System.Web; using System.Web.Services; using System.Web.Script.Services; using System.Web.Script.Serialization; [ScriptService] partial class testing_class : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Session[“FileID”] = Request.QueryString[“FileID”]; } public static string returnJSON(object o) { JavaScriptSerializer js = new JavaScriptSerializer(); return […]

在json反序列化期间确定类型

我正在研究一种协议,其中接收器将接收某些指定自定义类型的json消息(当前为5,但可能为10-20)。 我正在努力想出一个最优/快速的解决方案,它将自动反序列化json并返回正确类型的对象。 例: public class MessageA { public string Message; } public class MessageB { public int value; } public class MessageC { public string ValueA; public string ValueB; } 理想情况下,该方法应该是这样的 Object Deserialize(string json); 并且它将返回三种消息类型之一或null – 如果存在解析错误/ json与任何预定义类型都不匹配。 更新:我可以控制发送器/接收器以及协议设计。

WCF返回Streams或Strings?

我一直对WCF和返回类型越来越感到沮丧。 我目前正在研究一种从SQL读取数据的方法,根据检索的数据量创建某种类型的新对象,然后使用从SQL检索的数据分配对象值。 我有适当的function来序列化为JSON和XML。 理想情况下,我想将我的序列化对象转换为字符串,以便我可以以转换的方式从浏览器中读取响应,希望以下示例更具说明性。 我在序列化对象并返回流时获得的好处是格式化是完美的,并且它在类中使用我的DataMembers,因此JSON中的响应将如下所示: {“GameID”:1,”ProposalID”:5} 但是当我在浏览器中检索数据时,它会要求我保存流文件,我在记事本中打开流来查看此结果。 这并不理想,因为结果不会作为字符串出现在浏览器上。 如果我返回一个字符串,我会得到数据,但是使用DataMembers没有正确格式化或者序列化的任何优点,因此信息非常简单,没有意义: “3151” 从这个例子中可以看出,我还检索了2个每个2个变量的SQL字段。 我不确定如何将结果附加到流上,因为它只返回最后一个结果(5,1),更不用说正确地返回它们了。 虽然我不确定我是否可以粘贴一些我想要实现的东西,但无论如何它都是: http : //api.justin.tv/api/user/show/justin.json 我的直接想法是使用XMLWriter或某种手动编写信息,但我希望能够为序列化和DataMemberfunction支付红利。 我的回程代码: foreach (MatchProposal proposal in Proposals) { returnStream = WriteJSON(SerializeToJSON(proposal)); } public MemoryStream SerializeToJSON(object serializeObject) { DataContractJsonSerializer serializer = new DataContractJsonSerializer(serializeObject.GetType()); MemoryStream memoryStream = new MemoryStream(); serializer.WriteObject(memoryStream, serializeObject); return memoryStream; } public Stream WriteJSON(MemoryStream memoryStream) { string json […]